2 Replies Latest reply on Dec 15, 2003 4:17 PM by Robert Costanzo

    Error while Accessing Remote EJB with JBoss 3.2.2 and IBM 1.

    Robert Costanzo Newbie

      I am running into a problem while upgrading my server from JBoss 3.2.1 to JBoss 3.2.2 (with Jetty). I need to access EJBs remotely from one JBoss instance to another. This is working fine under JBoss 3.2.1 with the IBM JRE 1.4.1. However, I receive the following error when I attempt to retrieve a remote home with JBoss 3.2.2 and the IBM JRE 1.4.1:

      2003-12-09 13:45:27,619 ERROR [org.jboss.ejb.plugins.LogInterceptor] Unexpected Error:
      java.lang.NoClassDefFoundError: $Proxy436
      at sun.reflect.GeneratedSerializationConstructorAccessor255.newInstance(Unknown Source)
      at java.lang.reflect.Constructor.newInstance(Constructor.java(Compiled Code))
      at java.io.ObjectStreamClass.newInstance(ObjectStreamClass.java:831)
      at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1654)
      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java(Compiled Code))
      at java.io.ObjectInputStream.readObject(ObjectInputStream.java(Compiled Code))
      at java.rmi.MarshalledObject.get(MarshalledObject.java:146)
      at org.jnp.interfaces.MarshalledValuePair.get(MarshalledValuePair.java:30)
      at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:550)
      at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:507)
      at javax.naming.InitialContext.lookup(InitialContext.java:360)
      at mts.psp.admin.AdministratorManagerUtil.getHome(AdministratorManagerUtil.java:54)
      at mts.psp.admin.AdministratorManagerEJB.promoteChanges(AdministratorManagerEJB.java:510)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java(Compiled Code))
      at java.lang.reflect.Method.invoke(Method.java(Compiled Code))
      at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:683)
      at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java(Compiled Code))
      at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:72)
      at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java(Compiled Code))
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java(Compiled Code))
      at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java(Compiled Code))
      at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java(Compiled Code))
      at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java(Compiled Code))
      at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java(Compiled Code))
      at org.jboss.ejb.StatelessSessionContainer.internalInvoke(StatelessSessionContainer.java:331)
      at org.jboss.ejb.Container.invoke(Container.java(Compiled Code))
      at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java(Compiled Code))
      at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSessionProxy.java:83)


      I have tried using JBoss 3.2.2 and switching out the IBM JRE with the Sun 1.4.2 one, and it works fine. However, I need to use the IBM JRE since under any significant load the Sun JRE always core dumps.

      I have already moved the Jboss bcel.jar to an endorsed directory to get around that incompatibility with the IBM JRE. Are there any other known incompatibilities regarding looking up remote EJBs with JBoss 3.2.2 and the IBM JRE? It looks like another class conflict, but I can't find where.

      Thanks.