JMS server fail to work with error org.jboss.mq.SpyJMSExcept
jimyliu Sep 28, 2004 2:53 AMOur application runs on JBoss 3.2.4. I ran 2 concurrent users test on this application. After 6-10 hours, the JMS server failed to work until I restart it. This machine has multiple ip addresses.
The error mesg like this:
==========================================
org.jboss.mq.SpyJMSException: Cannot authenticate user; - nested throwable: (java.lang.NullPointerException)
at org.jboss.mq.Connection.authenticate(Connection.java:1161)
at org.jboss.mq.Connection.(Connection.java:248)
at org.jboss.mq.Connection.(Connection.java:325)
at org.jboss.mq.SpyConnection.(SpyConnection.java:66)
at org.jboss.mq.SpyConnectionFactory.createConnection(SpyConnectionFactory.java:87)
at org.jboss.mq.SpyConnectionFactory.createTopicConnection(SpyConnectionFactory.java:136)
at com.broadvision.data.message.MsgSessionMgr.openJMSConnection(MsgSessionMgr.java:51)
at com.broadvision.data.message.MsgSender.openJMSConnection(MsgSender.java:41)
at com.broadvision.data.message.MsgSender.sendMessage(MsgSender.java:144)
at com.broadvision.data.cache.CacheManager.sendMessage(CacheManager.java:287)
at com.broadvision.visitor.utils.UserProfileCacheUtil.flushVisitorData(UserProfileCacheUtil.java:214)
at com.broadvision.visitor.ejb.genericVisitorEjb.GenericVisitorBean.flushVisitors(GenericVisitorBean.java:1080)
at java.lang.reflect.Method.invoke(Native Method)
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:315)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:148)
at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:120)
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:723)
at java.lang.reflect.Method.invoke(Native Method)
at org.jboss.mx.server.ReflectedDispatcher.dispatch(ReflectedDispatcher.java:60)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:61)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:53)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:185)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:473)
at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:97)
at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:90)
at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)
at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:53)
at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:100)
at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:85)
at $Proxy120.flushVisitors(Unknown Source)
at com.broadvision.visitor.utils.GenericVisitorClient.flushVisitors(GenericVisitorClient.java:1145)
at com.broadvision.visitor.client.VisitorManager.flushVisitors(VisitorManager.java:892)
at com.broadvision.visitor.client.Visitor.flushCache(Visitor.java:2265)
at com.broadvision.visitor.client.Visitor.isPasswordValid(Visitor.java:430)
at com.broadvision.visitor.client.Visitor.authenticateAgainstBV(Visitor.java:2406)
at com.broadvision.visitor.client.Visitor.authenticate(Visitor.java:2351)
at com.broadvision.web.action.LoginAction.authenticateUser(LoginAction.java:269)
at com.broadvision.web.action.LoginAction.loginUser(LoginAction.java:210)
at com.broadvision.web.action.LoginAction.execute(LoginAction.java:107)
=============================================
I tried this workaround "run.sh -Djboss.bind.address=<ip address>...
Still fail.
Another finding: When I run same application on another server which has only one ip address, there is no any problem under the same test.
Any suggestion to trace down this problem.
Thanks.
Jimy