-
1. Re: Warning Messages
bruno.arruda Feb 14, 2005 2:55 PM (in response to bruno.arruda)Sorry to bother with this problem, but im getting hundreads of those messages and i can´t reaaly understand what is going on, i turned my Entity Beans and my service's Session Beans to Transaction="NotSupported" but im still getting those freak messages. Does an1 have any idea what should i look for??
Thx again!!
Bruno Arruda -
2. Re: Warning Messages
bruno.arruda Feb 14, 2005 3:15 PM (in response to bruno.arruda)I was looking at my server.log and found some messages like this one
2005-02-14 17:17:14,551 DEBUG [org.jboss.ejb.EntityContainer] Failed to register cache as mbean
javax.management.NotCompliantMBeanException: Class does not expose a management interface: org.jboss.ejb.plugins.PerTxEntityInstanceCache
i think it is on startup of each entity bean container
Hope this helps you to help me :-]
Im kindda worried about that :-[
ty Again! -
3. Re: Warning Messages
eprst Dec 18, 2005 11:55 AM (in response to bruno.arruda)I'm having the same problem with 4.0.3SP1
-
4. Re: Warning Messages
eprst Dec 21, 2005 9:55 AM (in response to bruno.arruda)I've runned JBoss under debugger and here's what my investigation shows: I'm calling instance per transaction BMP entity bean without a transaction context, by default it has a commit option C. Right after bean method invocation JBoss tries to passivate the instance, but fails because enterprise context is still locked, thus a perfectly valid(?) code generates lots of warnings.
My code looks like this (schematically):MyInstancePerTransactionBean bean = home.findByPrimaryKey(...); bean.method1(); //here we get passivation failure warning bean.method2(); //and another one here
Call trace:at org.jboss.ejb.plugins.PerTxEntityInstanceCache.canPassivate(PerTxEntityInstanceCache.java:181) at org.jboss.ejb.plugins.PerTxEntityInstanceCache.tryToPassivate(PerTxEntityInstanceCache.java:152) at org.jboss.ejb.plugins.PerTxEntityInstanceCache.release(PerTxEntityInstanceCache.java:94) at org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invoke(EntitySynchronizationInterceptor.java:364) at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:149) at org.jboss.ejb.plugins.EntityReentranceInterceptor.invoke(EntityReentranceInterceptor.java:111) at org.jboss.ejb.plugins.EntityInstanceInterceptor.invoke(EntityInstanceInterceptor.java:261) 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.CallValidationInterceptor.invoke(CallValidationInterceptor.java:48) at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:106) at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:363) at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:166) at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:153) at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:192) at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122) at org.jboss.ejb.EntityContainer.internalInvoke(EntityContainer.java:514) at org.jboss.ejb.Container.invoke(Container.java:873) at sun.reflect.GeneratedMethodAccessor104.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80) at org.jboss.mx.server.Invocation.invoke(Invocation.java:72) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:245) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:644) at org.jboss.invocation.local.LocalInvoker$MBeanServerAction.invoke(LocalInvoker.java:155) at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:104) at org.jboss.invocation.InvokerInterceptor.invokeLocal(InvokerInterceptor.java:179) at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:165) at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46) at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:55) at org.jboss.proxy.ejb.EntityInterceptor.invoke(EntityInterceptor.java:97) at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:86) at $Proxy1264.getHierarchyName(Unknown Source) at com.supportwizard.swgroups.SWGroupsBean.ejbFindByName(SWGroupsBean.java:915)me(SWGroupsBean.java:915)
(JBoss 4.0.3sp1)
Here SWGroupsBean is an ordinary BMP bean, it's ejbFindByName method contains the code snippet shown above (method1 being getHierarchyName). As I said ctx is locked, so PerTxEntityInstanceCache.canPassivate returns false and we get a warning.
Is it a bug or this warning is valid and I'm doing something wrong?