Session bean throws java.io.NotSerializableException
erden Aug 2, 2002 5:19 AMAccessing a remote session bean from another machine with trans-attribute Required throws a java.io.NotSerializableException
I have client statefull session bean. From that bean I am trying to access from another server remotely another session bean.
Defining the trans-attribute of the client session bean as
<ejb-name>ClientSessionBean</ejb-name>
<method-name>*</method-name>
<trans-attribute>Required</trans-attribute>
throws a java.io.NotSerializableException
It works fine when you define it
<ejb-name>ClientSessionBean</ejb-name>
<method-name>*</method-name>
<trans-attribute>NotSupported</trans-attribute>
also it works fine when you have them inside the same jar file and you accessing that remotely.
Doesn't make any difference the <trans-attribute> of the server session bean. It works fine with both Required and NotSupported.
I am using jboss-3.1.0alpha build as of 01/08/2002, jdk1.3.1_03, and win2000
The error stack that I get is as follows.
2002-08-02 09:09:29,071 ERROR [STDERR] java.rmi.MarshalException: error marshalling arguments; nested exception is:
java.io.NotSerializableException: org.jboss.tm.TransactionImpl
2002-08-02 09:09:29,071 ERROR [STDERR] java.io.NotSerializableException: org.jboss.tm.TransactionImpl
2002-08-02 09:09:29,071 ERROR [STDERR] at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1143)
2002-08-02 09:09:29,071 ERROR [STDERR] at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
2002-08-02 09:09:29,071 ERROR [STDERR] at org.jboss.invocation.MarshalledInvocation.writeExternal(MarshalledInvocation.java:360)
2002-08-02 09:09:29,071 ERROR [STDERR] at java.io.ObjectOutputStream.outputObject(ObjectOutputStream.java:1167)
2002-08-02 09:09:29,071 ERROR [STDERR] at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:361)
2002-08-02 09:09:29,071 ERROR [STDERR] at sun.rmi.server.UnicastRef.marshalValue(UnicastRef.java:263)
2002-08-02 09:09:29,081 ERROR [STDERR] at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:101)
2002-08-02 09:09:29,081 ERROR [STDERR] at org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invoke(Unknown Source)
2002-08-02 09:09:29,081 ERROR [STDERR] at org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.invoke(JRMPInvokerProxy.java:127)
2002-08-02 09:09:29,081 ERROR [STDERR] at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:92)
2002-08-02 09:09:29,081 ERROR [STDERR] at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:51)
2002-08-02 09:09:29,081 ERROR [STDERR] at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:48)
2002-08-02 09:09:29,081 ERROR [STDERR] at org.jboss.proxy.ejb.HomeInterceptor.invoke(HomeInterceptor.java:175)
2002-08-02 09:09:29,081 ERROR [STDERR] at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:82)
2002-08-02 09:09:29,081 ERROR [STDERR] at $Proxy260.create(Unknown Source)
2002-08-02 09:09:29,081 ERROR [STDERR] at bluecycle.eclaims.server.ejb.request.RequestSessionBean.createAuction(RequestSessionBean.java:98)
2002-08-02 09:09:29,081 ERROR [STDERR] at java.lang.reflect.Method.invoke(Native Method)
2002-08-02 09:09:29,081 ERROR [STDERR] at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:606)
2002-08-02 09:09:29,081 ERROR [STDERR] at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:186)
2002-08-02 09:09:29,091 ERROR [STDERR] at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:77)
2002-08-02 09:09:29,091 ERROR [STDERR] at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:108)
2002-08-02 09:09:29,091 ERROR [STDERR] at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:179)
2002-08-02 09:09:29,091 ERROR [STDERR] at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:61)
2002-08-02 09:09:29,091 ERROR [STDERR] at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:130)
2002-08-02 09:09:29,091 ERROR [STDERR] at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:204)
2002-08-02 09:09:29,091 ERROR [STDERR] at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:154)
2002-08-02 09:09:29,091 ERROR [STDERR] at org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessionContainer.java:303)
2002-08-02 09:09:29,091 ERROR [STDERR] at org.jboss.ejb.Container.invoke(Container.java:673)
2002-08-02 09:09:29,091 ERROR [STDERR] at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:549)
2002-08-02 09:09:29,091 ERROR [STDERR] at org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:325)
2002-08-02 09:09:29,091 ERROR [STDERR] at java.lang.reflect.Method.invoke(Native Method)
2002-08-02 09:09:29,091 ERROR [STDERR] at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:236)
2002-08-02 09:09:29,091 ERROR [STDERR] at sun.rmi.transport.Transport$1.run(Transport.java:147)
2002-08-02 09:09:29,091 ERROR [STDERR] at java.security.AccessController.doPrivileged(Native Method)
2002-08-02 09:09:29,091 ERROR [STDERR] at sun.rmi.transport.Transport.serviceCall(Transport.java:143)
2002-08-02 09:09:29,091 ERROR [STDERR] at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
2002-08-02 09:09:29,091 ERROR [STDERR] at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
2002-08-02 09:09:29,091 ERROR [STDERR] at java.lang.Thread.run(Thread.java:479)