Hi!
I have two applications, one of them has some services (getting data from database etc.) and gives access to them by Spring Remoting (HttpInvokerServiceExporter is using).
Second application is simple web application with Spring controllers and JSPs which is responsible for present pages and data. Both of them are deployed on separate WeblogicServer (v11). Application with remote services is deployed on two WLS and there is apache domain with load balancing configured for them.
When I configure in web application HttpInvokerProxyFactoryBean for remote service and set property "serviceUrl" directly to WeblogicServer everythink is fine.
When I set in "serviceUrl" apache domain which directs to WeblogicServers with remote services I have error 500 and exception:
orCode:Servlet failed with IOException java.io.StreamCorruptedException: invalid stream header: 00000000 at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:782) at java.io.ObjectInputStream.<init>(ObjectInputStream.java:279) at org.springframework.core.ConfigurableObjectInputStream.<init>(ConfigurableObjectInputStream.java:47) at org.springframework.remoting.rmi.CodebaseAwareObjectInputStream.<init>(CodebaseAwareObjectInputStream.java:81) at org.springframework.remoting.rmi.RemoteInvocationSerializingExporter.createObjectInputStream(RemoteInvocationSerializingExporter.java:105) at org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter.readRemoteInvocation(HttpInvokerServiceExporter.java:114) at org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter.readRemoteInvocation(HttpInvokerServiceExporter.java:95) at org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter.handleRequest(HttpInvokerServiceExporter.java:72) at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:49) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560) at javax.servlet.http.HttpServlet.service(HttpServlet.java:727) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:183) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3717) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
Then when I refresh page everythink is fine and there is no errors. Only first request is failed.Code:Servlet failed with IOException java.net.ProtocolException: EOF after reading only: '0' of: '27569' promised bytes, out of which at least: '0' were already buffered at weblogic.servlet.internal.PostInputStream.complain(PostInputStream.java:93) at weblogic.servlet.internal.PostInputStream.read(PostInputStream.java:179) at weblogic.servlet.internal.ServletInputStreamImpl.read(ServletInputStreamImpl.java:228) at java.io.ObjectInputStream$PeekInputStream.read(ObjectInputStream.java:2265) at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2278) Truncated. see log file for complete stacktrace >
Do you have idea what is going on? What is the problem?
Thanks for a help!


Reply With Quote