Topic
IC4NOTICE: developerWorks Community will be offline May 29-30, 2015 while we upgrade to the latest version of IBM Connections. For more information, read our upgrade FAQ.
4 replies Latest Post - ‏2013-02-04T16:42:35Z by MrFerg
MrFerg
MrFerg
4 Posts
ACCEPTED ANSWER

Pinned topic Setting ApplIdentityData in JMS

‏2013-02-01T16:40:42Z |
I'm trying to do some B2B MQ, and our vendor is requiring the ApplIdentityData be set.

Using JMS, we are already setting the following:

message.setStringProperty(JmsConstants.JMS_IBM_MQMD_APPLIDENTITYDATA, "somevalue");

((MQQueue)destinationQueue).setIntProperty(WMQConstants.WMQ_MQMD_MESSAGE_CONTEXT,WMQConstants.WMQ_MDCTX_SET_ALL_CONTEXT);

With this, the queue browse still doesn't show the applidentity as expected. See below.

My MQ admin tells me the following:

"But what I’m not seeing is anything setting the correct options when the Message is actually Put to the Queue. Outside of the JMS world, these are the MQPMO_* Put Message Options that get OR’ed together and control the characteristics of the specific Message being Put to the Queue. Perhaps there is something we’re missing with the JmsTemplate.send() method or whatever method you’re using?"

Unfortunately, I've scanned all morning, and cannot find any resources that tell how to do what he's requesting. Any suggestions?

MQEncoding :0x'222'
CCSID :437
Format :'MQSTR '
Priority :4
Persistence :1 (Persistent)
Message Id :414D5120434144414D414E202020202050DE80E92FDE771E
'AMQ CADAMAN P.../.w.'
Correl. Id :000000000000000000000000000000000000000000000000
'........................'
Backout Cnt. :0
ReplyToQ :'REPLY.TEST '
ReplyToQMgr :'U03T75100 '
UserId :' '
AccountingTkn:0000000000000000000000000000000000000000000000000000000000000000
ApplIdentity :' '
PutApplType :0 (No Context)
PutApplName :' '
Put Date :' '
Put Time :' '
ApplOriginDat:' '
Group Id :000000000000000000000000000000000000000000000000
Updated on 2013-02-04T16:42:35Z at 2013-02-04T16:42:35Z by MrFerg
  • swlinn
    swlinn
    1346 Posts
    ACCEPTED ANSWER

    Re: Setting ApplIdentityData in JMS

    ‏2013-02-02T01:25:27Z  in response to MrFerg
    There is a function (dpfunc:mq-set-request-header) in store:///utilities.xsl that will help.

    <!-- don't forget to do the include outside of your template match!!! -->
        <xsl:include href="store:///utilities.xsl" />
     
        <xsl:template match="/">
     
         ....
         <!-- $header should have the header name, in your case, ApplIdentityData, and $value should have the
              header value, in your case, somevalue
         -->
         <xsl:variable name="mq-set-request-header" select="dpfunc:mq-set-request-header($header, $value)" />
     
     
        </xsl:template>
    


    Regards,
    Steve
    Updated on 2014-03-25T02:41:03Z at 2014-03-25T02:41:03Z by iron-man
    • MrFerg
      MrFerg
      4 Posts
      ACCEPTED ANSWER

      Re: Setting ApplIdentityData in JMS

      ‏2013-02-04T13:32:21Z  in response to swlinn
      I'm writing Java. I don't understand how this XSLT would help. Can you give me a bit more?
      • swlinn
        swlinn
        1346 Posts
        ACCEPTED ANSWER

        Re: Setting ApplIdentityData in JMS

        ‏2013-02-04T15:33:18Z  in response to MrFerg
        My mistake, I thought you were trying to do this within the DataPower appliance. Perhaps you should see if there is another forum that addresses JMS / Java questions and post the question there.

        Regards,
        Steve
  • MrFerg
    MrFerg
    4 Posts
    ACCEPTED ANSWER

    Re: Setting ApplIdentityData in JMS

    ‏2013-02-04T16:42:35Z  in response to MrFerg
    Sorry! Will re-post in a java forum.