This test (testMDBRunAs) does not work. Method RunAsMDB.onMessage() is 
never invoked. I was using the standard security interceptor setup.

2002-05-31 10:11:22,222 TRACE [org.jboss.ejb.plugins.LogInterceptor] 
Start method=onMessage
2002-05-31 10:11:22,222 TRACE [org.jboss.ejb.plugins.TxInterceptorCMT] 
Current transaction in MI is null
2002-05-31 10:11:22,223 TRACE [org.jboss.ejb.plugins.TxInterceptorCMT] 
TX_NOT_SUPPORTED for onMessage
2002-05-31 10:11:22,223 TRACE [org.jboss.ejb.plugins.TxInterceptorCMT] 
Thread came in with tx null
2002-05-31 10:11:22,223 TRACE 
[org.jboss.ejb.plugins.MessageDrivenInstancePool] Get instance 
org.jboss.ejb.plugins.MessageDrivenInstancePool@7ff2dc#true#class 
org.jboss.test.security.ejb.RunAsMDB
2002-05-31 10:11:22,322 TRACE [org.jboss.ejb.plugins.LogInterceptor] 
Start method=findByPrimaryKey
2002-05-31 10:11:22,335 DEBUG 
[org.jboss.security.auth.spi.UsersRolesLoginModule] Bad password for 
username=null
2002-05-31 10:11:22,337 ERROR 
[org.jboss.ejb.plugins.SecurityInterceptor] Authentication exception, 
principal=null
2002-05-31 10:11:22,338 TRACE [org.jboss.ejb.plugins.LogInterceptor] End 
method=findByPrimaryKey
2002-05-31 10:11:22,339 DEBUG [org.jboss.test.security.ejb.RunAsMDB] 
failed
java.rmi.RemoteException: checkSecurityAssociation; nested exception is:
        java.lang.SecurityException: Authentication exception, principal=null
java.lang.SecurityException: Authentication exception, principal=null
        at 
org.jboss.ejb.plugins.SecurityInterceptor.checkSecurityAssociation
(SecurityInterceptor.java:174)
        at 
org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.java:
94)
        at 
org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:109)
        at org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:487)
        at org.jboss.ejb.Container.invoke(Container.java:726)
        at org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:1055)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:491)
        at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:98)
        at 
org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:102)
        at 
org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:
73)
        at 
org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:76)
        at org.jboss.proxy.ejb.HomeInterceptor.invoke(HomeInterceptor.java:185)
        at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:76)
        at $Proxy197.findByPrimaryKey(Unknown Source)
        at org.jboss.test.security.ejb.RunAsMDB.onMessage(RunAsMDB.java:68)
        at java.lang.reflect.Method.invoke(Native Method)
        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.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:496)




On Thursday, May 30, 2002, at 02:06  PM, Scott M Stark wrote:

> It works with a security interceptor on the mdb. See the
> org.jboss.test.security.test.EJBSpecUnitTestCase unit
> test setup for an example.
>
> xxxxxxxxxxxxxxxxxxxxxxxx
> Scott Stark
> Chief Technology Officer
> JBoss Group, LLC
> xxxxxxxxxxxxxxxxxxxxxxxx
> ----- Original Message -----
> From: "Stephen Coy" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Wednesday, May 29, 2002 7:44 PM
> Subject: Re: [JBoss-user] Security and Message Driven Beans
>
>
>> Does "run-as" not work yet?
>>
>> My MDB is now receiving messages, but I get authentication exceptions 
>> as
>> soon as I access an EJB's finder:
>>
>> 12:34:56,766 INFO  [AgreementFacadeBean] Submitting agreement 20000485
>> for assessment
>> 12:34:57,021 INFO  [ProcessorBean] Commencing processing of agreement:
>> 20000485
>> 12:34:57,049 ERROR [SecurityInterceptor] Authentication exception,
>> principal=null
>> 12:34:57,052 ERROR [ProcessorBean]
>> java.lang.reflect.UndeclaredThrowableException
>> 12:34:57,055 ERROR [ProcessorBean] javax.ejb.EJBException: null
>> Embedded Exception
>> null
>> 12:34:57,127 ERROR [LogInterceptor] TransactionRolledbackException,
>> causedBy:
>> javax.ejb.EJBException: null
>> Embedded Exception
>> null
>>          at
>> com.whitesmiths.sacha.ejb.assessment.ProcessorBean.onMessage(Unknown
>> Source)
>>          at java.lang.reflect.Method.invoke(Native Method)
>>          at
>> org.jboss.ejb.MessageDrivenContainer$ContainerInterceptor.invoke
>> (MessageDrivenContainer.java:391)
>>          at
>> org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke
>> (CachedConnectionInterceptor.java:147)
>>          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.LogInterceptor.invoke(LogInterceptor.java:166)
>>          at
>>
> org.jboss.ejb.MessageDrivenContainer.invoke(MessageDrivenContainer.java:302)
>>          at
>>
> org.jboss.ejb.plugins.jms.JMSContainerInvoker.invoke
> (JMSContainerInvoker.jav
> a:
>> 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:560)
>>          at
>> org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:377)
>>          at org.jboss.mq.SpySession.run(SpySession.java:220)
>>          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:496)
>> java.rmi.RemoteException: checkSecurityAssociation; nested exception 
>> is:
>>          java.lang.SecurityException: Authentication exception,
>> principal=null
>> java.lang.SecurityException: Authentication exception, principal=null
>>          at
>> org.jboss.ejb.plugins.SecurityInterceptor.checkSecurityAssociation
>> (SecurityInterceptor.java:169)
>>          at
>>
> org.jboss.ejb.plugins.SecurityInterceptor.invokeHome
> (SecurityInterceptor.jav
> a:
>> 93)
>>          at
>> org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:109)
>>          at
>> org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:487)
>>          at
>> org.jboss.ejb.plugins.local.BaseLocalContainerInvoker.invokeHome
>> (BaseLocalContainerInvoker.java:227)
>>          at
>> org.jboss.ejb.plugins.local.LocalHomeProxy.invoke(LocalHomeProxy.java:110)
>>          at $Proxy96.findByPrimaryKey(Unknown Source)
>>          at
>> com.whitesmiths.sacha.ejb.assessment.ProcessorBean.onMessage(Unknown
>> Source)
>>          at java.lang.reflect.Method.invoke(Native Method)
>>          at
>> org.jboss.ejb.MessageDrivenContainer$ContainerInterceptor.invoke
>> (MessageDrivenContainer.java:391)
>>          at
>> org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke
>> (CachedConnectionInterceptor.java:147)
>>          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.LogInterceptor.invoke(LogInterceptor.java:166)
>>          at
>>
> org.jboss.ejb.MessageDrivenContainer.invoke(MessageDrivenContainer.java:302)
>>          at
>>
> org.jboss.ejb.plugins.jms.JMSContainerInvoker.invoke
> (JMSContainerInvoker.jav
> a:
>> 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:560)
>>          at
>> org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:377)
>>          at org.jboss.mq.SpySession.run(SpySession.java:220)
>>          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:496)
>>
>> On Thursday, May 30, 2002, at 11:20  AM, Scott M Stark wrote:
>>
>>> Actually the 3.0 release will include a stripped down security
>>> interceptor
>>> for MDBs that just supports the run-as functionality.
>>>
>>> xxxxxxxxxxxxxxxxxxxxxxxx
>>> Scott Stark
>>> Chief Technology Officer
>>> JBoss Group, LLC
>>> xxxxxxxxxxxxxxxxxxxxxxxx
>>> ----- Original Message -----
>>> From: "Stephen Coy" <[EMAIL PROTECTED]>
>>> To: "jboss-user" <[EMAIL PROTECTED]>
>>> Sent: Wednesday, May 29, 2002 5:11 PM
>>> Subject: [JBoss-user] Security and Message Driven Beans
>>>
>>>
>>>> Hi,
>>>>
>>>>
>>>> I am using JBoss 3.0RC3.
>>>>
>>>> I've got a stateful session bean which is associated with a Principal
>>>> that has been authenticated in our application's security domain.
>>>> When I
>>>> try to send a message to a queue based MDB, I get the following
>>>> exception:
>>>>
>>>> 18:14:00,821 INFO  [AgreementFacadeBean] Submitting agreement 
>>>> 20000416
>>>> for assessment
>>>> 18:14:01,087 ERROR [SecurityInterceptor] Authentication exception,
>>>> principal=null
>>>> 18:14:01,089 ERROR [JMSContainerInvoker] Exception in JMSCI message
>>>> listener
>>>> java.rmi.RemoteException: checkSecurityAssociation; nested exception
>>>> is:
>>>>          java.lang.SecurityException: Authentication exception,
>>>> principal=null
>>>> java.lang.SecurityException: Authentication exception, principal=null
>>>>          at
>>>> org.jboss.ejb.plugins.SecurityInterceptor.checkSecurityAssociation
>>>> (SecurityInterceptor.java:169)
>>>>          at
>>>>
> org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:
>>>> 118)
>>>>          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.jav
>>> a:
>>>> 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:560)
>>>>          at
>>>> org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:377)
>>>>          at org.jboss.mq.SpySession.run(SpySession.java:220)
>>>>          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:496)
>>>>
>>>> My queue is set up as follows in jbossmq-destinations-service.xml:
>>>>
>>>>    <mbean code="org.jboss.mq.server.jmx.Queue"
>>>> name="jboss.mq.destination:service=Queue,name=AssessmentQueue">
>>>>      <depends optional-attribute-
>>>> name="DestinationManager">jboss.mq:service=DestinationManager</depends>
>>>>    </mbean>
>>>>
>>>> and the code to send the message:
>>>>
>>>> // Grab a reference to the assessment queue and create a
>>>> connection to it.
>>>> QueueConnectionFactory factory =
>>>> (QueueConnectionFactory)mJMSContext.lookup(QUEUE_FACTORY_NAME);
>>>> Queue queue = (Queue)mJMSContext.lookup(queueName);
>>>> QueueConnection queueConnection = factory.createQueueConnection();
>>>> try
>>>> {
>>>> // Create a queue session and a queue sender to forward our message
>>>> QueueSession queueSession =
>>>> queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
>>>> QueueSender queueSender = queueSession.createSender(queue);
>>>>
>>>> // Create an ObjectMessage to hold the agreement refnum so
>>>> that it can
>>>> // be transmitted to the assessment processor.
>>>> ObjectMessage anObjectMessage = queueSession.createObjectMessage();
>>>> anObjectMessage.setObject(agreement.getRefNum());
>>>>
>>>> queueSender.send(anObjectMessage);
>>>> }
>>>> finally
>>>> {
>>>> queueConnection.close();
>>>> }
>>>>
>>>> Any pointers or tips would be greatly appreciated!
>>>>
>>>> Thanks,
>>>>
>>>> Steve Coy
>>>>
>>>>
>>>> _______________________________________________________________
>>>>
>>>> Don't miss the 2002 Sprint PCS Application Developer's Conference
>>>> August 25-28 in Las Vegas -- 
>>>> http://devcon.sprintpcs.com/adp/index.cfm
>>>>
>>>> _______________________________________________
>>>> JBoss-user mailing list
>>>> [EMAIL PROTECTED]
>>>> https://lists.sourceforge.net/lists/listinfo/jboss-user
>>>>
>>>
>>>
>>> _______________________________________________________________
>>>
>>> Don't miss the 2002 Sprint PCS Application Developer's Conference
>>> August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm
>>>
>>> _______________________________________________
>>> JBoss-user mailing list
>>> [EMAIL PROTECTED]
>>> https://lists.sourceforge.net/lists/listinfo/jboss-user
>>
>>
>> _______________________________________________________________
>>
>> Don't miss the 2002 Sprint PCS Application Developer's Conference
>> August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm
>>
>> _______________________________________________
>> JBoss-user mailing list
>> [EMAIL PROTECTED]
>> https://lists.sourceforge.net/lists/listinfo/jboss-user
>>
>
>
> _______________________________________________________________
>
> Don't miss the 2002 Sprint PCS Application Developer's Conference
> August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm
>
> _______________________________________________
> JBoss-user mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/jboss-user


_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to