DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=4930>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=4930

java.io.StreamCorruptedException: Type code out of range, is 0 with Apache WebApp 
module

           Summary: java.io.StreamCorruptedException: Type code out of
                    range, is 0 with Apache WebApp module
           Product: Tomcat 4
           Version: 4.0 Final
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: Major
          Priority: Other
         Component: Other Connectors
        AssignedTo: [EMAIL PROTECTED]
        ReportedBy: [EMAIL PROTECTED]


My configuration :
* Linux 2.2.18
* Apache/1.3.9 (Unix) Debian/GNU
* gcc 2.95.2
* libc6 2.1.3 
* java 1.3.1 (build Blackdown-1.3.1-FCS)

The application I maintained works fine with Apache+Tomcat 3.2.3 (with mod_jk,
using ajp13). I decided to give a try with Apache+Tomcat 4.0.1 (with webapp module).

My application uses lots of communication between applet and servlets. This
communication is done through the use of serialized objects.

It works fine with Tomcat 3.2.3. And with Tomcat 4.0.1 and module WebApp the
servlets can't deserialize anymore the objects they read from the 
HttpServletRequest and a java.io.StreamCorruptedException is thrown :

20011116 17:43:26 ERROR [Thread-4] State - de-serialization failure -- Control
information in the stream is inconsistent
java.io.StreamCorruptedException: Type code out of range, is 0
        at java.io.ObjectInputStream.peekCode(ObjectInputStream.java:1556)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:292)
        at java.io.ObjectInputStream.inputClassFields(ObjectInputStream.java:2263)
        at java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:519)
        at java.io.ObjectInputStream.inputObject(ObjectInputStream.java:1412)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:386)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:236)
        at com.mine.server.GlobalServlet.readRequest(GlobalServlet.java:190)
        at com.mine.server.GlobalServlet.doPost(GlobalServlet.java:157)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServlet.java:446)
        at
org.apache.catalina.servlets.InvokerServlet.doPost(InvokerServlet.java:216)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:201)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2344)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:163)
        at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
        at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
        at
org.apache.catalina.connector.warp.WarpRequestHandler.handle(WarpRequestHandler.java:215)
        at
org.apache.catalina.connector.warp.WarpConnection.run(WarpConnection.java:194)
        at java.lang.Thread.run(Thread.java:484)


More precisions :
I have tried with Tomcat working as a standalone servlet container (without
Apache and WebApp module) and the application works fine, no deserialization
failure.
Moreover I've had similar symptoms with mod_jk using ajp13 with an earlier
version of Tomcat3 (maybe the 3.2.2, but I can't remember for sure).
So my guess is that maybe the solution to this problem has already been found
for the 3.2 series and could be used for the WebApp module.

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to