Hi All, I have a LOCAL applet (with a LOCAL html page) that is trying to send an object to a servlet that is sitting on a REMOTE server. I need to pass an object between the two. * I have placed a hole in my firewall * my local applet is signed The servlet will not accept the object. I have not edited the web.xml file (since I do not know if it would help) I did edit my server.xml file in order to specify the http port (8888). The message on tomcat reads : Status code:404 request:R( + /signed/WEB-INF/classes/SERVLET_receiveSIMOBJ2.class + null) msg:null I know that local applets are not supposed to talk to servlets on different hosts, but I have also been told that with TCP, a firewall hole, and a signed applet, it should work. Can it ? Is there some way on Tomcat to get around this problem ? This code works either locally or remotely as long as the code is on the same machine. Thanks so very much in advance, it is genuinely appreciated. Here is some critical code : //==================== LOCAL APPLET String urlstr = "http://machine.cluster.net:8888/signed/servlet/SERVLET_receiveSIMOBJ2"; // where machine.cluster.net is the server // 8888 is the port with the hole try { URL servletURL = new URL (urlstr); URLConnection uc = servletURL.openConnection(); uc.setDoOutput(true); uc.setDoInput(true); uc.setUseCaches(false); uc.setRequestProperty("Content-type", "application/octet-stream"); ObjectOutputStream objOut = new ObjectOutputStream (new GZIPOutputStream(uc.getOutputStream())); // sent it to the servlet System.out.println("APPLET: SENT TO SERVLET asldkfad" ); objOut.writeObject((Object)simobj); objOut.flush(); objOut.close(); System.out.println("APPLET : READING OBJECT BACK " ); ObjectInputStream objIn = new ObjectInputStream (new GZIPInputStream(uc.getInputStream())); // read an object from the servlet simobjout = (SIMDataOBj) objIn.readObject(); // ooo.junk = "JUNK"; System.out.println("Received info from Servlet " + simobjout.A + simobjout.B + simobjout.C + simobjout.D); objIn.close(); return simobjout; } //**************************************** END LOCAL APPLET //**************************************** REMOTE SERVLET public void doPost (HttpServletRequest request, HttpServletResponse response) { System.out.println("In Servlet's do post - reached "); // NEVER REACHED try { ObjectInputStream objIn = new ObjectInputStream (new GZIPInputStream(request.getInputStream())); // set up output stream response.setContentType("application/octet-stream"); ObjectOutputStream objOut = new ObjectOutputStream (new GZIPOutputStream(response.getOutputStream())); SIMDataOBj simobj = new SIMDataOBj(); simobj = (SIMDataOBj) objIn.readObject(); WriteXML (simobj); System.out.println("In Servlet ::: Printing the Object's contents " + simobj.A + simobj.B + simobj.C + simobj.D); simobj.A = "1 !!!!!!!!!!!! 1"; simobj.B = "2 !!!!!!!!!!!!!!!!!! 2"; simobj.C = "3 !!!!!!!!!!!!!!!!!!!! 3"; simobj.D = "4 !!!!!!!!!!!!!!!!!! 4"; objOut.writeObject((Object)simobj); objOut.close(); System.out.println("End Servlet Communication "); } //**************************************** END REMOTE Servlet //**************************************** both local and remote SIMDataObj class SIMDataOBj extends Object implements Serializable { String A, B, C, D; SIMDataOBj(){ A= new String ("THIS " ); B= new String (" IS " ); C= new String (" A " ); D= new String (" D " ); } } //**************************************** END both local and remote SIMDataObj ========================LOCAL HTML with signed applet ====================================== ========================END LOCAL HTML with signed applet ======================================
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
