Bonjour,

Depuis une classe de test, je souhaite exécuter une commande telnet pour me connecter sur mon propre process qui est à l'écoute. Pour le contexte, mon process est capable de recevoir des commandes sur un port et d'exécuter des traitements : je souhaite valider son comportement avec un autre traitement en parallèle.
La commande a exécuter est donc du type "telnet localhost 1999" où 1999 est le numéro de port sur lequel mon process écoute. Testé directement depuis le système, la cde marche bien...
En résultat, le Process créé est immédiatement terminé avec le code retour -1

Le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
String cmd = "telnet localhost "+ Controller.getInstance().getProperty("port");
try
{
             System.out.println("Exécution cmd : "+cmd);
	process = Runtime.getRuntime().exec(cmd);
	try
	{
		// Le exitValue qui confirme que c'est immédiatement terminé
		System.out.println("Res process : "+process.exitValue());
	}
	catch (IllegalThreadStateException e)
	{
		System.out.println("process non terminé !");
	}
}
Le résultat :

Exécution cmd : telnet localhost 1999
Res process : -1


J'attends que le Process reste bloqué tant que je ne lui ait pas envoyer un mot clé sur la connexion.
Merci de votre aide !