Hello, I have an applet that sends an object to a servlet via an object input stream and I get the following error..
Ctx(/pr) : IOException in R( /pr + /servlet/pr + null) - java.io.StreamCorruptedException: Caught EOFException while reading the stream header at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:840) at java.io.ObjectInputStream.<init>(ObjectInputStream.java:163) at pr.doGet(pr.java:43) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at javax.servlet.http.HttpServlet.service(HttpServlet.java) at org.apache.tomcat.facade.ServletHandler.doService(ServletHandler.java:574) at org.apache.tomcat.core.Handler.invoke(Handler.java:322) at org.apache.tomcat.core.Handler.service(Handler.java:235) at org.apache.tomcat.facade.ServletHandler.service(ServletHandler.java:485) at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:917) at org.apache.tomcat.core.ContextManager.service(ContextManager.java:833) at org.apache.tomcat.modules.server.Http10Interceptor.processConnection(Http10Interceptor.java:176) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:494) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:516) at java.lang.Thread.run(Thread.java:479) -------------------- my code is as follows.. public boolean sendToServlet() { boolean sent = false; FormData fd = new FormData(cName,deliver,phone,acct,requested,date,subt, hst,tot,items); try { Serializable objs[] = { fd }; URL servlet = new URL(webbase, "pr/servlet/pr"); in = postObjects(servlet, objs); Boolean tmp = (Boolean)in.readObject(); sent = tmp.booleanValue(); in.close(); } catch(Exception e) {} return sent; } public ObjectInputStream postObjects(URL servlet, Serializable objs[]) throws Exception { URLConnection con = servlet.openConnection(); con.setDoInput(true); con.setDoOutput(true); con.setUseCaches(false); con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); // Write the arguments as post data ObjectOutputStream out = new ObjectOutputStream(con.getOutputStream()); int numObjects = objs.length; for (int x = 0; x < numObjects; x++) { out.writeObject(objs[x]); } out.flush(); out.close(); return new ObjectInputStream( con.getInputStream() ); } --servlet code chunk-- public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { res.setContentType("text/html"); ObjectInputStream in = new ObjectInputStream(req.getInputStream()); try { FormData data = (FormData)in.readObject(); PrintWriter out = res.getWriter(); report(res.getWriter(), data); } catch(Exception e) {} } ----------------- In a previous application I used basically the same code but in my servlet I used the doPost method instead. That application worked fine with no errors.. When I tried doing this appliation with doPost I would get GET method not specified errors.. The only difference between the 2 applications is that I am now using tomcat (not servletrunner). Is there something I'm not doing that I should be? Thanks Sohaila ___________________________________________________________________________ To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff SERVLET-INTEREST". Archives: http://archives.java.sun.com/archives/servlet-interest.html Resources: http://java.sun.com/products/servlet/external-resources.html LISTSERV Help: http://www.lsoft.com/manuals/user/user.html