11 Replies Latest reply on Feb 16, 2004 8:45 PM by marc.fleury

    NPE in InvalidationsTxGrouper.registerInvalidationSynchroniz

      When I try to access a CMP bean from a session bean without a trantaction, I get the following error (this is on jboss-3.2.1, but the problem seems to still exist on later versions):

      19:05:13,249 ERROR [LogInterceptor] RuntimeException:
      java.lang.NullPointerException
      at org.jboss.cache.invalidation.InvalidationsTxGrouper.registerInvalidationSynchronization(InvalidationsTxGrouper.java:76)
      at org.jboss.cache.invalidation.triggers.EntityBeanCacheBatchInvalidatorInterceptor.invoke(EntityBeanCacheBatchInvalidatorInterceptor.java:106)
      at org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invoke(EntitySynchronizationInterceptor.java:328)
      at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:186)
      at org.jboss.ejb.plugins.EntityReentranceInterceptor.invoke(EntityReentranceInterceptor.java:82)
      at org.jboss.ejb.plugins.EntityInstanceInterceptor.invoke(EntityInstanceInterceptor.java:174)
      at org.jboss.ejb.plugins.EntityLockInterceptor.invoke(EntityLockInterceptor.java:89)
      at org.jboss.ejb.plugins.EntityCreationInterceptor.invoke(EntityCreationInterceptor.java:53)
      at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:84)
      at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:216)
      at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:104)
      at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:117)
      at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)
      at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)
      at org.jboss.ejb.EntityContainer.internalInvoke(EntityContainer.java:483)
      at org.jboss.ejb.Container.invoke(Container.java:674)
      at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalProxyFactory.java:353)
      at org.jboss.ejb.plugins.local.EntityProxy.invoke(EntityProxy.java:38)
      at $Proxy147.getXpdlPackage(Unknown Source)
      at org.obe.server.j2ee.repository.EJBProcessRepository.findWorkflowProcess(EJBProcessRepository.java:247)
      at org.obe.engine.WorkflowEngine.findWorkflow(WorkflowEngine.java:2892)
      at org.obe.engine.WorkflowEngine.startProcess(WorkflowEngine.java:625)
      at org.obe.engine.WorkflowEngine.startProcess(WorkflowEngine.java:612)
      at org.obe.server.j2ee.J2EEServerBean.startProcess(J2EEServerBean.java:187)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

      [snip]...

      Looking at the source, I see that InvalidationsTxGrouper seems to assume that tx cannot be null, even though
      EntityBeanCacheBatchInvalidatorInterceptor may pass it a null value (see line 106).

      Am I doing something wrong, or is this a bug?

      Thanks

      --Chris