wrapper.console_input

Compatibilité :3.5.52
Éditions :Édition ProfessionnelleÉdition StandardÉdition Community
Plateformes :WindowsMac OSXLinuxAlpine LinuxFreeBSDSolarisIBM z/Linux

AVERTISSEMENT

NE MODIFIEZ AUCUN de ces paramètres sans avoir lu la description de cette propriété. Des paramètres incorrects peuvent empêcher le Wrapper de fonctionner comme prévu.

Cette propriété vous permet d'activer ou de désactiver la capacité du Wrapper à traiter l'entrée de la console pour la JVM.

Les valeurs possibles sont :

  • ENABLED :

    pour activer le traitement de stdin

  • DISABLED :

    pour désactiver le traitement de stdin

  • AUTO :

    pour laisser le Wrapper désactiver automatiquement la gestion de stdin lorsqu'il n'y a rien à lire
    (sous Windows, AUTO est toujours résolu en ENABLED).

La valeur par défaut est "AUTO".


Avec la valeur 'AUTO', le Wrapper désactive automatiquement la gestion de stdin dans les cas suivants (UNIX uniquement) :

  • Si la propriété wrapper.daemonize est définie à TRUE. Ceci est fait car un processus Daemon, par définition, n'a nulle part d'où lire.
  • S'il n'y a pas de terminal dans le groupe de processus de premier plan, ou si le groupe de processus du terminal de contrôle diffère du groupe du processus Wrapper.
  • Si '/dev/null' est redirigé vers stdin. C'est le cas par exemple lors de l'exécution dans un conteneur Docker sans TTY.
  • Si stdin est connecté à un type de fichier qui n'est pas destiné à la lecture.

Dans tous les autres cas, la gestion de stdin restera activée.


AUTO est généralement une valeur appropriée, sauf si vous savez que votre application ne lira jamais l'entrée de la console, auquel cas vous pouvez définir la propriété à DISABLED.

Désactiver l'entrée de la console fera bloquer indéfiniment toute tentative de lecture depuis la console. Ceci est fait pour empêcher certains codes Java de s'emballer dans une boucle en tentant de lire. De plus, cela permet une légère réduction de l'utilisation du CPU du côté du Wrapper.

Certains utilisateurs ont signalé des problèmes avec certaines JVM où une erreur "java.io.IOException: The handle is invalid." est levée lorsque la JVM tente de lire depuis System.in lorsqu'elle est connectée via le Wrapper. Définir wrapper.console_input à DISABLED permet de contourner ce problème.


Exemple : (Désactiver stdin)
wrapper.console_input=DISABLED

Référence : Console