0 Replies Latest reply on Nov 21, 2003 5:02 AM by andreacervi

    IllegalAcessError from jboss3.2.2 but not by jboss3.0.x

    andreacervi

      Hi Guys,

      We are proting our application from jboss3.0.6 to jboss 3.2.2 and we have a lot of problems.

      The most annoying one is an IllegalAcessError caused by the following class tree:

      public abstract class A{
      public abstract class AICA{
      protected int a;
      }
      public class CICA extends AICA{
      }
      }

      public class B extends A{

      void f(){
      CICA obj = new CICA();
      obj.a; // Hear the jboss exception is risen
      }
      }

      2003-11-20 15:08:19,846 INFO Report -> Build report from repository for
      Domain Set: CORE|IM
      2003-11-20 15:08:19,852 INFO Report -> Start extract Entity
      2003-11-20 15:08:27,069 INFO DBBean -> getNotVersionedObjectKeys: found
      9700 not versioned objects to be returned
      2003-11-20 15:08:27,093 ERROR ReportManager -> [Catched Exception ::=
      <tried to access field iotools.entityFramework.EntityRepository$Database
      EntityIDWithKeys.lockKey from class
      iotools.entityFramework.EntityRepositoryDBBeanBased>]
      java.lang.IllegalAccessError: tried to access field
      iotools.entityFramework.EntityRepository$DatabaseEntityIDWithKeys.lockKey from class iotoo
      ls.entityFramework.EntityRepositoryDBBeanBased
      at
      iotools.entityFramework.EntityRepositoryDBBeanBased.fullySynchronizeLocalStorage(EntityRepositoryDBBeanBased.java:934)
      at
      iotools.entityFramework.EntityRepositoryWithFullLocalStorage.getEntity(EntityRepositoryWithFullLocalStorage.java:185)
      at iotools.reportmanager.Report.extractEntity(Report.java:125)
      at iotools.reportmanager.Report.doReport(Report.java:69)
      at
      iotools.reportmanager.ReportManager.makeReport(ReportManager.java:146)
      at
      iotools.reportmanager.ReportManager.produceMergedReport(ReportManager.java:120)
      at
      iotools.report.ReportGeneratorBean.makeMergedReport(ReportGeneratorBean.java:1413)
      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.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:683)
      at
      org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:185)
      at
      org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:72)
      at
      org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:84)
      at
      org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:240)
      at
      org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:128)
      at
      org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:118)
      at
      org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)
      at
      org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
      at
      org.jboss.ejb.StatelessSessionContainer.internalInvoke(StatelessSessionContainer.java:331)
      at org.jboss.ejb.Container.invoke(Container.java:700)
      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.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
      at
      org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
      at
      org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:367)
      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
      sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)
      at sun.rmi.transport.Transport$1.run(Transport.java:148)
      at java.security.AccessController.doPrivileged(Native Method)
      at sun.rmi.transport.Transport.serviceCall(Transport.java:144)
      at
      sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
      at
      sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
      at java.lang.Thread.run(Thread.java:534)
      2003-11-20 15:08:27,117 ERROR ReportGeneratorBean -> ReportException:
      iotools.reportmanager.exception.ReportException: Exception making
      report:
      at
      iotools.reportmanager.exception.ReportExceptionFactory.getReportException(ReportExceptionFactory.java:49)
      at
      iotools.reportmanager.ReportManager.makeReport(ReportManager.java:159)
      at
      iotools.reportmanager.ReportManager.produceMergedReport(ReportManager.java:120)
      at
      iotools.report.ReportGeneratorBean.makeMergedReport(ReportGeneratorBean.java:1413)
      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.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(StatelessSessionContainer.java:683)
      at
      org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:185)
      at
      org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(StatelessSessionInstanceInterceptor.java:72)
      at
      org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:84)
      at
      org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:240)
      at
      org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:128)
      at
      org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:118)
      at
      org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)
      at
      org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
      at
      org.jboss.ejb.StatelessSessionContainer.internalInvoke(StatelessSessionContainer.java:331)
      at org.jboss.ejb.Container.invoke(Container.java:700)
      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.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)
      at
      org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)
      at
      org.jboss.invocation.jrmp.server.JRMPInvoker.invoke(JRMPInvoker.java:367)
      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
      sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:261)
      at sun.rmi.transport.Transport$1.run(Transport.java:148)
      at java.security.AccessController.doPrivileged(Native Method)
      at sun.rmi.transport.Transport.serviceCall(Transport.java:144)
      at
      sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:460)
      at
      sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:701)
      at java.lang.Thread.run(Thread.java:534)
      Caused by: java.lang.IllegalAccessError: tried to access field
      iotools.entityFramework.EntityRepository$DatabaseEntityIDWithKeys.lockKey from class iotools.entityFramework.EntityRepositoryDBBeanBased
      at
      iotools.entityFramework.EntityRepositoryDBBeanBased.fullySynchronizeLocalStorage(EntityRepositoryDBBeanBased.java:934)
      at
      iotools.entityFramework.EntityRepositoryWithFullLocalStorage.getEntity(EntityRepositoryWithFullLocalStorage.java:185)
      at iotools.reportmanager.Report.extractEntity(Report.java:125)
      at iotools.reportmanager.Report.doReport(Report.java:69)
      at
      iotools.reportmanager.ReportManager.makeReport(ReportManager.java:146)
      ... 35 more

      In jboss3.0.6 it works and our IDE (Eclipse) does not advice us of any kind of java compilation problem.

      Do anyone know why the IllegalAcessError exception is rosen by jboss3.2.2 and not by jboss3.0.6?

      Is it a jboss 3.2.2 bug?

      Best Regards,

      Andrea