import javax.servlet.http.*; import java.io.*; import java.util.Vector; import javax.servlet.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import jess.JessException; import jess.Rete; import se.liu.ida.JessTab.JessTabFunctions; /** * Applet <-> Servlet communication. */ public class ChargementServlet extends HttpServlet { Rete moteur; public void initialisation(ServletConfig config){ ////config ???/// try { // System.out.println("demarage de service"); moteur = new Rete(); moteur.addUserpackage(new JessTabFunctions()); moteur.executeCommand("(load-project Turb-Onto.pprj)"); ServletContext context = config.getServletContext(); //*******???// context.setAttribute("moteurJess",moteur); //****?????// } catch (JessException e1) {e1.printStackTrace();} } /** * Get a String-object from the applet and send it back. */ public void doPost( HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try { // init();///??????????????????????????????????// // initialisation(ServletConfig config);///????// response.setContentType("application/x-java-serialized-object"); // Lecture de la requet de l'applet InputStream in = request.getInputStream(); ObjectInputStream inputFromApplet = new ObjectInputStream(in); String Tranche = (String) inputFromApplet.readObject(); moteur.store("CHAINE",Tranche); Batch.run(moteur,"pgm1.clp"); moteur.eval("(defquery printSys (object (is-a ?c)(CODE_PARENT_GEOGRAPHIQUE ?m)))"); Query2 querySYS = null; querySYS = new Query2 (moteur,"printSys"); //traiter la requete Vector listeReponse=new Vector(); querySYS.traitement("printSys",listeReponse); //remes le res au applet // Envoi de la réponse :APPLET. OutputStream outstr = response.getOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(outstr); oos.writeObject(listeReponse); oos.flush(); oos.close(); } catch (Exception e) { e.printStackTrace(); } } }