Établir une communication entre un client Swing et une Servlet en utilisant HttpURLConnection
Bonjour, j’essaie d'envoyer un msg à ma servlet depuis mon client Swing, ci dessous le code du ce dernier:
Code:
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 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| public class HTTPClient {
private static URL url;
private static HttpURLConnection con;
public HTTPClient() {
}
public void start(String login, String passwd)
{
try {
Joueur joueur = new Joueur();
joueur.setLogin(login);
joueur.setPasswd(passwd);
url = new URL("http://localhost:8001/MetierServ/Servlet");
con = (HttpURLConnection) url.openConnection();
con.setDoOutput(true);
con.setDoInput(true);
con.setUseCaches(false);
con.setDefaultUseCaches(false);
OutputStream output = con.getOutputStream();
JAXBContext context = JAXBContext.newInstance(Joueur.class, ObjectFactory.class);
Marshaller encoder = context.createMarshaller();
encoder.marshal(joueur, output);
output.flush();
System.out.println("request sent");
} catch (UnknownHostException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (JAXBException e) {
e.printStackTrace();
}
}
} |
Du coté Client la requête est émise.
Coté Servlet j'avais juste mis un System.out.println en Post pour m'assurer que la servlet reçoit quelque chose, mais elle ne réagit pas, pourtant si je mets l'url dans un navigateur la servlet réagit parfaitement et affiche bien mon Syso
Voice mon XML sans le <Welcome-file>
Code:
1 2 3 4 5 6 7 8 9 10
| <servlet>
<description></description>
<display-name>Servlet</display-name>
<servlet-name>Servlet</servlet-name>
<servlet-class>Servlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Servlet</servlet-name>
<url-pattern>/Servlet</url-pattern>
</servlet-mapping> |
PS: Ce code marche parfaitement avec les sockets.
Besoin d'aide :?, Merci