Hi,
We have a J2EE application which we are porting to Netweaver Web AS o4. We are running into issues related to Serialization of objects when those objects are being passed as parameters to EJBs. If the objects contain some primitive type members, we are seeing exception similar to:
[code]java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.axis.providers.java.RPCProvider.invokeMethod(RPCProvider.java:388)
at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:283)
at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:323)
at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:453)
at org.apache.axis.server.AxisServer.invoke(AxisServer.java:281)
at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:699)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:327)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:385)
at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:263)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:340)
at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:318)
at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:821)
at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:239)
at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)
at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:147)
at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:37)
at com.sap.engine.core.cluster.impl6.session.UnorderedChannel$MessageRunner.run(UnorderedChannel.java:71)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:94)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:162)
Caused by: com.sap.engine.services.rmi_p4.exception.P4BaseRuntimeException: I/O operation failed : java.lang.ClassNotFoundException: boolean
Found in negative cache
-
Loader Info -
ClassLoader name: [ejbGensap.com/OurJ2EEApplications]
Parent loader name: [sap.com/OurJ2EEApplications]
References:
service:ejb
common:library:com.sap.security.api.sda;library:com.sap.security.core.sda;library:security.class;library:webservices_lib;service:com.sap.security.core.ume.service;service:connector;service:dbpool;service:keystore;service:security;service:userstore
interface:resourcecontext_api
interface:resourceset_api
interface:transactionext
interface:security
interface:cross
library:opensql
Resources:
C:\usr\sap\W02\JC00\j2ee\cluster\server0\apps\sap.com\OurJ2EEApplications\EJBContainer\jars\gen_tdappinfoejb.jar
C:\usr\sap\W02\JC00\j2ee\cluster\server0\apps\sap.com\OurJ2EEApplications\EJBContainer\jars\gen_tddatamgmtejb.jar
C:\usr\sap\W02\JC00\j2ee\cluster\server0\apps\sap.com\OurJ2EEApplications\EJBContainer\jars\gen_tdengappsejb.jar
C:\usr\sap\W02\JC00\j2ee\cluster\server0\apps\sap.com\OurJ2EEApplications\EJBContainer\jars\gen_tdevtmgmtejb.jar
C:\usr\sap\W02\JC00\j2ee\cluster\server0\apps\sap.com\OurJ2EEApplications\EJBContainer\jars\gen_tdmetadatasvcejb.jar
C:\usr\sap\W02\JC00\j2ee\cluster\server0\apps\sap.com\OurJ2EEApplications\EJBContainer\jars\gen_tdplanningejb.jar
C:\usr\sap\W02\JC00\j2ee\cluster\server0\apps\sap.com\OurJ2EEApplications\EJBContainer\jars\gen_tdsecurityejb.jar
C:\usr\sap\W02\JC00\j2ee\cluster\server0\apps\sap.com\OurJ2EEApplications\EJBContainer\jars\gen_tdtaskmgmtejb.jar
-
:
at com.sap.engine.services.rmi_p4.server.P4ObjectBrokerServerImpl.getException(P4ObjectBrokerServerImpl.java:1054)
at com.sap.engine.services.rmi_p4.StubImpl.p4_replicateWithStreams(StubImpl.java:286)
at com.ourapp.server.planning.ejbs.ForecastPlanningSession_Stub.addProductsToPlan(ForecastPlanningSession_Stub.java:556)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at com.sap.engine.services.ejb.session.stateless_sp5.ObjectStubProxyImpl.invoke(ObjectStubProxyImpl.java:187)
at $Proxy299.addProductsToPlan(Unknown Source)
at com.ourapp.server.service.planning.impl.ForecastPlanServiceImpl.addProductsToBO(ForecastPlanServiceImpl.java:802)
... 30 more
Caused by: java.lang.ClassNotFoundException: boolean
Found in negative cache
-
Loader Info -
ClassLoader name: [ejbGensap.com/OurJ2EEApplications]
Parent loader name: [sap.com/OurJ2EEApplications]
References:
service:ejb
common:library:com.sap.security.api.sda;library:com.sap.security.core.sda;library:security.class;library:webservices_lib;service:com.sap.security.core.ume.service;service:connector;service:dbpool;service:keystore;service:security;service:userstore
interface:resourcecontext_api
interface:resourceset_api
interface:transactionext
interface:security
interface:cross
library:opensql[/code]
The stacktrace mentions that the primitive 'boolean' is being considered of Object type which results in a exception resulting in the de-serialization failing and the application crashing.
On investigating further, we found this Java Bug :
which appears to be related to this issue. The bug mentions that it affects JDK version 1.3 and Web AS o4 runs on 1.3 version of Java.
Can anyone confirm whether these are related. And if related, is there any fix for this issue in Web AS o4.