[jboss-user] [JBoss Messaging] - Issue with default clientId on ConnectionFactory
mskonda
do-not-reply at jboss.com
Wed Jul 25 04:34:53 EDT 2007
I have setup a connectionfactory with a default client id as shown below:
| <?xml version="1.0" encoding="UTF-8"?>
| <server>
| <loader-repository>jboss.messaging:loader=ScopedLoaderRepository
| <loader-repository-config>java2ParentDelegation=false</loader-repository-config>
| </loader-repository>
|
| <mbean code="org.jboss.jms.server.connectionfactory.ConnectionFactory"
| name="jboss.messaging.connectionfactory:service=MyConnectionFactory"
| xmbean-dd="xmdesc/ConnectionFactory-xmbean.xml">
| <constructor>
| <arg type="java.lang.String" value="my-client-id"/>
| </constructor>
| <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
| <depends optional-attribute-name="Connector">jboss.messaging:service=Connector,transport=bisocket</depends>
| <depends>jboss.messaging:service=PostOffice</depends>
|
| <attribute name="JNDIBindings">
| <bindings>
| <binding>/MyConnectionFactory</binding>
| </bindings>
| </attribute>
| </mbean>
| </server>
|
The connection factory is bound to 'MyConnectionFactory' as expected.
In my test client, I am doing the normal JMS setup of fetching the CF and getting a connection.
The issue is when I try to create a durable subscription with no client id (as I am assuming the connection obtained from CF will use the default client id set during CF creation) on the connection.
Seems, that's not the case: I get
java.lang.IllegalArgumentException: clientID name is null
|
Here's my test case:
| public void testSimplestDurableSubscription()
| {
| try
| {
| logger.info("test started");
| Connection conn = cf.createConnection();
|
|
| // conn.setClientID("my-client-id");
|
| Session s = conn.createSession(false, Session.AUTO_ACKNOWLEDGE);
| logger.info("Created session");
|
| /*
| * The client id and the subscriber id is same
| */
|
| s.createDurableSubscriber((Topic) TEST_DUR_TOPIC_DEST_1,"my-sub-id");
|
| logger.info("Created durable subscriber");
|
| ObjectName destObjectName = new ObjectName(
| "jboss.messaging.destination:service=Topic,name=" + getObjectName());
|
| List subs = listSubscriptions(destObjectName);
| logger.info("Number of subscriptions " + subs.size());
|
| assertNotNull(subs);
|
| // undeployDestination(TEST_DUR_TOPIC_1);
|
| closeConnection(conn);
| }
| catch (Exception ex)
| {
| logger.error(ex);
| }
| finally
| {
| try
| {
| undeployDestination(TEST_DUR_TOPIC_1);
| }
| catch (Exception e)
| {
| logger.error(e);
| }
| }
| }
Any pointers where I'm going wrong?
Thanks
Madhu
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4067329#4067329
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4067329
More information about the jboss-user
mailing list