communication servlet/applet - Java - Programmation
Marsh Posté le 13-04-2004 à 09:58:28
Qu'est ce que tu utilises comme serveur Servlet pour les faire communiquer ?
Marsh Posté le 13-04-2004 à 10:54:20
montre le code de l'applet chargé de faire la com avec le servlet.
Marsh Posté le 13-04-2004 à 14:02:00
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.net.*;
public class EchoApplet extends Applet {
private TextField inputField = new TextField();
private TextField outputField=new TextField();
private TextArea exceptionArea = new TextArea();
public void init(){
setLayout(new GridBagLayout());
Label title=new Label("EchoApplet",Label.CENTER);
title.setFont(new Font("SansSerif",Font.BOLD,14));
GridBagConstraints c=new GridBagConstraints();
c.gridwidth=GridBagConstraints.REMAINDER;
c.weightx=1.0;
c.fill=GridBagConstraints.HORIZONTAL;
c.insets=new Insets(5,5,5,5);
add(title,c);
c=new GridBagConstraints();
c.anchor=GridBagConstraints.EAST;
add(new Label("Input:",Label.RIGHT),c);
c=new GridBagConstraints();
c.fill=GridBagConstraints.HORIZONTAL;
c.weightx=1.0;
add(inputField,c);
Button sendButton=new Button("Send" );
c=new GridBagConstraints();
c.gridwidth=GridBagConstraints.REMAINDER;
add(sendButton,c);
sendButton.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
envoyerMessage();
}
});
c=new GridBagConstraints();
c.anchor=GridBagConstraints.EAST;
add(new Label("Output:",Label.RIGHT),c);
c=new GridBagConstraints();
c.gridwidth=GridBagConstraints.REMAINDER;
c.fill=GridBagConstraints.HORIZONTAL;
c.weightx=1.0;
add(outputField,c);
outputField.setEditable(false);
c=new GridBagConstraints();
c.anchor=GridBagConstraints.EAST;
add(new Label("Exception:",Label.RIGHT),c);
c=new GridBagConstraints();
c.gridwidth=GridBagConstraints.REMAINDER;
c.weighty=1;
c.fill=GridBagConstraints.BOTH;
add(exceptionArea,c);
exceptionArea.setEditable(false);
}
private void envoyerMessage(){
try{
String input=inputField.getText();
//connexion au serveur distant servlet
URL url=new URL(getCodeBase(),"servlet/EchoServlet" );
URLConnection connexion=url.openConnection();
connexion.setDoOutput(true);//permet l'envoi d'info vers le serveur methode post
connexion.setDoInput(true);
connexion.setUseCaches(false);
PrintWriter sortie=new PrintWriter(connexion.getOutputStream(),true);
sortie.println(input);//envoi de message(flot de texte vers l'exterieur)
sortie.flush();
sortie.close();
BufferedReader entree=new BufferedReader(new InputStreamReader(connexion.getInputStream()));
outputField.setText(entree.readLine());//lecture et affichage de la réponse servlet
entree.close();
}
catch (Exception ex){exceptionArea.setText(ex.toString());}
} }
voila le code de mon applet
ma servlet s'appelle EchoServlet
j'utilise Tomcat comme moteur de servlet
Marsh Posté le 13-04-2004 à 09:23:10
voila je cherche a communiquer d'une applet vers une servlet java
mais jai un probleme lorsque l'applet essaye de se connecter à la servlet j'obtiens l'erreur d'exception=> java.net.UnknownServiceException: protocol doesn't support output
que faire plz???????