Bonjour à tous,

Je tente de me connecter en SSH (via JSCH) à un serveur tournant sous Centos, afin de lancer une application.
La connexion se passe bien, mais je n'ai pas l'affichage de mon application, alors que le process est bien lancé sur le serveur

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
17
18
19
20
21
22
23
24
25
26
27
 
String commandToLaunch ="bash -c \"source $HOME/.profile; launchApp.sh\"";
 
        try {
            //SSH variable connexion
            JSch jsch = new JSch();
 
            //host + ip adress + port
            sessionSequence = jsch.getSession(username, ipAdress, 22);
 
            //connexion password + configuration
            sessionSequence.setPassword(password);
            sessionSequence.setConfig("StrictHostKeyChecking", "no");
            sessionSequence.connect();
 
            //execute script
            executeLaunchChannel = (ChannelExec) sessionSequence.openChannel("exec");
            //Execute command
            executeLaunchChannel.setCommand(commandToLaunch);
            executeLaunchChannel.setInputStream(System.in);
            executeLaunchChannel.setOutputStream(System.out);
            executeLaunchChannel.setErrStream(System.err);
            executeLaunchChannel.setXForwarding(true);
            InputStream in = executeLaunchChannel.getInputStream();
            //execution
            executeLaunchChannel.connect();
}
J'ai fais pas mal de recherche sur le net, et certaines personnes rajoutaient des options au channel et à la session :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
[...]
sessionSequence.setX11Host("IP_Serveur_Centos");
sessionSequence.setX11Port(6000); //choisi par mes soins, bien que j'en ai essayé plusieurs
[...]
executeLaunchChannel.setPty(true);
executeLaunchChannel.setPtyType("xterm");
executeLaunchChannel.setAgentForwarding(true);
Mais même avec ces options, je n'ai pas de display.

J'ai aussi tenté de rajouté le display directement dans les commandes que je passe, mais sans success
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
String commandToLaunch ="bash -c \"source $HOME/.profile; export DISPLAY=IP:6000.0; launchApp.sh\"";
Enfin, au niveau de la configuration du serveur, certains liens/threads évoquaient la configuration du service SSH sur le serveur. Mais de ce point de vue là, d'autres applications lancés à distance (mais pas via JAVA/JSCH) s'affichent bien sur le poste client.
Ce qui me fait dire, peut être à tort, que cela vient de mon code.

Avez-vous quelques idées ?

Merci