[jboss-jira] [JBoss JIRA] Resolved: (EJBTHREE-2094) Unmarshalling of param fails with ClassNotFoundException during invocation on a Singleton bean packaged in an isolated deployment

jaikiran pai (JIRA) jira-events at lists.jboss.org
Tue May 18 06:43:06 EDT 2010


     [ https://jira.jboss.org/browse/EJBTHREE-2094?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

jaikiran pai resolved EJBTHREE-2094.
------------------------------------

    Component Fix Version(s): singleton:1.0.0-alpha-3
               Fix Version/s: EJB3_1 1.0.8
                  Resolution: Done


Fixed http://github.com/jaikiran/jboss-ejb3-singleton/commit/c4834f0c3f6ceca2467fa8552af4d28ae445ae29


> Unmarshalling of param fails with ClassNotFoundException during invocation on a Singleton bean packaged in an isolated deployment
> ---------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: EJBTHREE-2094
>                 URL: https://jira.jboss.org/browse/EJBTHREE-2094
>             Project: EJB 3.0
>          Issue Type: Bug
>          Components: singleton
>    Affects Versions: EJB3_1 1.0.7
>            Reporter: jaikiran pai
>            Assignee: jaikiran pai
>             Fix For: EJB3_1 1.0.8
>
>
> Invocation on a simple singleton bean:
> public class SomeSingletonBean
> {
>   public void doSomething(SomeCustomClass param)
>  {
>    ...
>  }
> }
> fails with ClassNotFoundException for SomeCustomClass like below:
> java.lang.RuntimeException: java.lang.ClassNotFoundException: de.xxx.persistence.entity.core.Company (no security manager: RMI class loader disabled)
>     at org.jboss.aop.joinpoint.MethodInvocation.getArguments(MethodInvocation.java:318)
>     at org.jboss.ejb3.singleton.aop.impl.AOPBasedSingletonContainer.dynamicInvoke(AOPBasedSingletonContainer.java:331)
>     at org.jboss.ejb3.session.InvokableContextClassProxyHack._dynamicInvoke(InvokableContextClassProxyHack.java:53)
>     at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:91)
>     at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
>     at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:897)
>     at org.jboss.remoting.transport.socket.ServerThread.completeInvocation(ServerThread.java:768)
>     at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:721)
>     at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:548)
>     at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:234)
> Caused by: java.lang.ClassNotFoundException: de.xxx.persistence.entity.core.Company (no security manager: RMI class loader disabled)
>     at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:375)
>     at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java:165)
>     at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java:620)
>     at org.jboss.system.JBossRMIClassLoader.loadClass(JBossRMIClassLoader.java:91)
>     at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java:247)
>     at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java:197)
>     at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1575)
>     at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
>     at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
>     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
>     at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1667)
>     at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
>     at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
>     at java.rmi.MarshalledObject.get(MarshalledObject.java:142)
>     at org.jboss.aop.joinpoint.MethodInvocation.getArguments(MethodInvocation.java:309)
>     at org.jboss.ejb3.singleton.aop.impl.AOPBasedSingletonContainer.dynamicInvoke(AOPBasedSingletonContainer.java:331)
>     at org.jboss.ejb3.session.InvokableContextClassProxyHack._dynamicInvoke(InvokableContextClassProxyHack.java:53)
>     at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:91)
>     at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
>     at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:897)
>     at org.jboss.remoting.transport.socket.ServerThread.completeInvocation(ServerThread.java:768)
>     at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:721)
>     at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:548)
>     at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:234)
>     at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:213)
>     at org.jboss.remoting.Client.invoke(Client.java:1927)
>     at org.jboss.remoting.Client.invoke(Client.java:770)
>     at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:60)
>     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>     at org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:61)
>     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>     at org.jboss.ejb3.security.client.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:65)
>     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>     at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:74)
>     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>     at org.jboss.aspects.remoting.PojiProxy.invoke(PojiProxy.java:62)
>     at $Proxy6.invoke(Unknown Source)
>     at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:188)
>     at $Proxy5.get(Unknown Source)
>     at de.xxx.test.CoreServicesRemoteTest.testCompanyCreate(CoreServicesRemoteTest.java:39)
>     at de.xxx.test.CoreServicesRemoteTest.main(CoreServicesRemoteTest.java:50)
>     at org.jboss.aspects.remoting.InvokeRemoteInterceptor.invoke(InvokeRemoteInterceptor.java:72)
>     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>     at org.jboss.aspects.tx.ClientTxPropagationInterceptor.invoke(ClientTxPropagationInterceptor.java:61)
>     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>     at org.jboss.ejb3.security.client.SecurityClientInterceptor.invoke(SecurityClientInterceptor.java:65)
>     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>     at org.jboss.ejb3.remoting.IsLocalInterceptor.invoke(IsLocalInterceptor.java:74)
>     at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)
>     at org.jboss.aspects.remoting.PojiProxy.invoke(PojiProxy.java:62)
>     at $Proxy6.invoke(Unknown Source)
>     at org.jboss.ejb3.proxy.impl.handler.session.SessionProxyInvocationHandlerBase.invoke(SessionProxyInvocationHandlerBase.java:188)
>     at $Proxy5.get(Unknown Source)
>     at de.xxx.test.CoreServicesRemoteTest.testCompanyCreate(CoreServicesRemoteTest.java:39)
>     at de.xxx.test.CoreServicesRemoteTest.main(CoreServicesRemoteTest.java:50)
> This is because, during unmarshalling, the AOPSingletonBasedContainer.dynamicInvoke does not use the container's classloader.
> See the referenced forum thread for details.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jboss-jira mailing list