I am using the default configuration with JBoss 3.2.6. I can deploy a topic 
using the following XML:
<mbean code="org.jboss.mq.server.jmx.Topic"  
name="jboss.mq.destination:service=Topic,name=SampleTopic">
  |   <depends 
optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends>
  |   <depends 
optional-attribute-name="SecurityManager">jboss.mq:service=SecurityManager</depends>
  |   <attribute name="SecurityConf">
  |     <security>
  |       <role name="durpublisher" read="true" write="true" create="true"/>
  |     </security>
  |   </attribute>
  | </mbean>
and then I can create a Durable Topic Subscription using the following code:
InitialContext iniCtx = new InitialContext();
  | TopicConnectionFactory tcf =
  |     (TopicConnectionFactory) iniCtx.lookup("ConnectionFactory");
  | TopicConnection conn = tcf.createTopicConnection("john", "needle");
  | Topic topic = (Topic) iniCtx.lookup( "topic/SampleTopic" );
  | TopicSession session =
  |     conn.createTopicSession(false, TopicSession.AUTO_ACKNOWLEDGE);
  | conn.start();
  | TopicSubscriber recv =
  |     session.createDurableSubscriber(topic, "SampleSubscriber");
However, if I instead create the topic at runtime, via the JMX Console, I get 
an exception.  I use the createTopic method in the DestinationManager MBean.  
After the topic has been created, I set the SecurityManager and SecurityConf 
attributes in the MBean.  I set SecurityManager to:
jboss.mq:service=SecurityManager

and I set the SecurityConf attribute to:
<security><role name="durpublisher" read="true" write="true" 
create="true"/></security>
When I try to subscribe to the topic using the code above, I get the following 
exception:
15:37:46,781 INFO  [STDOUT] javax.jms.JMSSecurityException: Connection not 
authorized to do durable subscription on topic: SampleTopic
15:37:46,781 INFO  [STDOUT]     at 
org.jboss.mq.security.ServerSecurityInterceptor.subscribe(ServerSecurityInterceptor.java:135)
15:37:46,782 INFO  [STDOUT]     at 
org.jboss.mq.server.TracingInterceptor.subscribe(TracingInterceptor.java:816)
15:37:46,782 INFO  [STDOUT]     at 
org.jboss.mq.server.JMSServerInvoker.subscribe(JMSServerInvoker.java:297)
15:37:46,782 INFO  [STDOUT]     at 
org.jboss.mq.il.uil2.ServerSocketManagerHandler.handleMsg(ServerSocketManagerHandler.java:160)
15:37:46,798 INFO  [STDOUT]     at 
org.jboss.mq.il.uil2.SocketManager$ReadTask.handleMsg(SocketManager.java:358)
15:37:46,798 INFO  [STDOUT]     at 
org.jboss.mq.il.uil2.msgs.BaseMsg.run(BaseMsg.java:377)
15:37:46,799 INFO  [STDOUT]     at 
EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:748)
15:37:46,799 INFO  [STDOUT]     at java.lang.Thread.run(Thread.java:595)

Any idea what steps I'm missing when I create the topic via JMX instead of 
deploying it via XML?

View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3860403#3860403

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3860403


-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to