IGNORE LOCALLY PUBLISH IN JMS TRIGGER

Hello,

When I am using JMS trigger, I am keeping two destinations one is TOPIC and the other is DURABLE TOPIC.
In this scenario when I am checking IGNORE LOCALLY PUBLISH for the DURABLE TOPIC then it is working fine.

But when I am checking the box of IGNORE LOCALLY PUBLISH for TOPIC then it is not working i.e it is not ignoring the publishing and hence giving the output.

As per the document it is written that it should work fine for both DURABLE TOPIC as well as TOPIC and CREATE NEW CONNECTION PER TRIGGER in the IS is also not enabled.

What could be the possible error in this scenario?

Can you provide the link to the docs that you are referring to? I can check and provide details if any.

Hello Mahesh,

The link of the document is mentioned below:

http://techcommunity.softwareag.com/ecosystem/documentation/webmethods/designer/sdf10-3/10-3_Service_Development_Help.pdf

You can refer page 726 of this document.

Thanks.

I could reproduce your issue. I’m looking into it.

The reason is, this “Ignore Locally Published” field works only when “Durable Subscriber Name” has a value, which means it has to be a Durable Topic. You would find the code blow if you take a look into the method com.wm.app.b2b.server.jms.consumer.ConsumerContextFactory.createMessageConsumer in wm-isserver.jar.


      String subscriberName = destinationFilterPair.getDurableSubscriberName();
      boolean noLocal = destinationFilterPair.getDurableSubscriberNoLocal();
      MessageConsumer messageConsumer;
      if ((subscriberName != null) && (subscriberName.trim().length() > 0))
      {
        subscriberName = this._connectionAlias.encodeNirvanaDurableSubscriberName(subscriberName);
        messageConsumer = session.createDurableSubscriber((Topic)destination, encodeName(subscriberName), messageSelector, noLocal);
      }
      else
      {
        messageConsumer = session.createConsumer(destination, messageSelector);
      }