JMS Security Question
davidsills Aug 9, 2002 7:07 AMI'm trying to deploy the message-driven bean in Richard Monson-Haefel's Enterprise JavaBeans (3rd ed.), Chapter 13. I'm using the JBoss workbook (still in beta, and missing much). I'm doing all this on JBoss 3.0.0, using MySql, on Windows XP.
I've managed all the EJB configuration, but am stumped by the following stacktrace, which seems to occur at just the first point that the MDB actually creates a QueueSession to the Reply-To that has been serialized and sent by the client:
QueueSession session = connect.createQueueSession (false,0);
I understand that the parameter values here are supposed to be ignored by the container, and also tried the recommended (true, 0) without any difference.
What's confusing is that I don't have a security manager set for this queue, and yet one seems to be being called. Undoubtedly there's just something I don't yet understand. Here's the configuration information:
<depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager
I'm just exploring JMS for the first time, and I'd like to hope that I can get this working with a little help from this forum. Thanks!
05:20:17,451 WARN [LogInterceptor] Unexpected Error
java.lang.ClassCircularityError: java/lang/Comparable
at org.jboss.security.plugins.JaasSecurityManager.validateCache(JaasSecurityManager.java:406)
at org.jboss.security.plugins.JaasSecurityManager.isValid(JaasSecurityManager.java:213)
at org.jboss.mq.security.SecurityManager.authenticate(SecurityManager.java:157)
at org.jboss.mq.security.ServerSecurityInterceptor.authenticate(ServerSecurityInterceptor.java:40)
at org.jboss.mq.server.TracingInterceptor.authenticate(TracingInterceptor.java:575)
at org.jboss.mq.server.JMSServerInvoker.authenticate(JMSServerInvoker.java:288)
at org.jboss.mq.il.jvm.JVMServerIL.authenticate(JVMServerIL.java:302)
at org.jboss.mq.Connection.authenticate(Connection.java:759)
at org.jboss.mq.Connection.(Connection.java:233)
at org.jboss.mq.SpyConnection.(SpyConnection.java:48)
at org.jboss.mq.SpyXAConnection.(SpyXAConnection.java:38)
at org.jboss.mq.SpyXAConnectionFactory.createXAQueueConnection(SpyXAConnectionFactory.java:111)
at org.jboss.jms.ConnectionFactoryHelper.createQueueConnection(ConnectionFactoryHelper.java:67)
at org.jboss.resource.adapter.jms.JmsManagedConnection.setup(JmsManagedConnection.java:598)
at org.jboss.resource.adapter.jms.JmsManagedConnection.(JmsManagedConnection.java:164)
at org.jboss.resource.adapter.jms.JmsManagedConnectionFactory.createManagedConnection(JmsManagedConnectionFactory.java:96)
at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnection(InternalManagedConnectionPool.java:236)
at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:101)
at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:312)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:467)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:532)
at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:812)
at org.jboss.resource.adapter.jms.JmsSessionFactoryImpl.createQueueSession(JmsSessionFactoryImpl.java:117)
at com.titan.reservationprocessor.ReservationProcessorBean.deliverTicket(ReservationProcessorBean.java:130)
at com.titan.reservationprocessor.ReservationProcessorBean.onMessage(ReservationProcessorBean.java:109)
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.MessageDrivenContainer$ContainerInterceptor.invoke(MessageDrivenContainer.java:391)
at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:186)
at org.jboss.ejb.plugins.MessageDrivenInstanceInterceptor.invoke(MessageDrivenInstanceInterceptor.java:88)
at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:96)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:142)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:61)
at org.jboss.ejb.plugins.RunAsSecurityInterceptor.invoke(RunAsSecurityInterceptor.java:100)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:166)
at org.jboss.ejb.MessageDrivenContainer.invoke(MessageDrivenContainer.java:302)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker.invoke(JMSContainerInvoker.java:625)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker$MessageListenerImpl.onMessage(JMSContainerInvoker.java:973)
at org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:234)
at org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:561)
at org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:377)
at org.jboss.mq.SpySession.run(SpySession.java:252)
at org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:173)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:642)
at java.lang.Thread.run(Thread.java:536)