You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "yashasvi (JIRA)" <ji...@apache.org> on 2016/05/19 08:49:12 UTC

[jira] [Commented] (AMQNET-552) Creating two consumers on a single session in XMS

    [ https://issues.apache.org/jira/browse/AMQNET-552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15290711#comment-15290711 ] 

yashasvi commented on AMQNET-552:
---------------------------------

NMS provider is giving exception on this, where as we can achieve this using ibm xms directly. I have created a ticket on the nms forum here :

https://issues.apache.org/jira/browse/AMQNET-552

> Creating two consumers on a single session in XMS
> -------------------------------------------------
>
>                 Key: AMQNET-552
>                 URL: https://issues.apache.org/jira/browse/AMQNET-552
>             Project: ActiveMQ .Net
>          Issue Type: Bug
>          Components: XMS
>            Reporter: yashasvi
>            Assignee: Jim Gomes
>
> Hi, I am trying to create two consumers on a single session using the xms provider, but facing this error : 
> {"CWSMQ0101E: Synchronous method call not permitted when a session is being used asynchronously: CreateConsumer.\r\nThe XMS specification does not permit the use of a session for synchronous methods when asynchronous message delivery is running.\r\nCreate a separate session if you wish to use both synchronous methods and asynchronous delivery simultaneously."}
> But, when I am trying to do the same thing by directly using the ibm.xms library, I am able to do so. 
> So, is this a limitation of the nms xms provider ? If that is the case, why does the exception states that XMS specification does not permit it.
> Below are the codes for two different cases :
> Using NMS provider :
> ConnectionFactory factory = new ConnectionFactory(new Uri("****?wmq.channelname=***&queuemanagername=***"));
>             Apache.NMS.IConnection conn = factory.CreateConnection("userid", "pwd");
>             conn.Start();
>             ISession se = conn.CreateSession();
>             IDestination qu = se.GetQueue("***");
>             IMessageConsumer consumer = se.CreateConsumer(qu);
>            IMessageConsumer consumer2 = se.CreateConsumer(qu);
> This is giving me error.
> Using IBM.XMS directly :
> IConnection connection = factory.CreateConnection();
>             connection.Start();
>             ISession se = connection.CreateSession(false, AcknowledgeMode.AutoAcknowledge);
>             IDestination des = se.CreateQueue("***");
>             IDestination des2 = se.CreateQueue("***");
>             IMessageConsumer consu = se.CreateConsumer(des);
>             IMessageProducer prod = se.CreateProducer(des);
>             IMessageConsumer consu2 = se.CreateConsumer(des);
> This is working fine.
> Please help.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)