Topic
  • 4 replies
  • Latest Post - ‏2013-01-04T14:37:17Z by T736_Mayur_Garg
SystemAdmin
SystemAdmin
6772 Posts

Pinned topic Any way to set PMO options in MPGW response rule with MQFSH?

‏2012-08-09T13:41:37Z |
Hi,

An MPGW has been developed on DataPower XI 50 with an MQFSH. On the response rule, DataPower needs to set the MQMD User Id field. The MQMD is being overridden in an XSL and set using dp:set-respones-header. Most of the values being set on DP are getting reflected in the MQMD of the reply message (checked by browsing the reply). However userId is not.
I understand that to set the user Id which belongs to the Identity context we need to set the PMO options (PMO=1028). However I am unable to find a way to set the PMO in the DP response rule. Also the FSH does not provide any options to set the PMO options.

Since the MQ response part is handled by the MQFSH, how do we set the PMO options in the response rule?

Thanks!
Updated on 2013-01-04T14:37:17Z at 2013-01-04T14:37:17Z by T736_Mayur_Garg
  • ytshen
    ytshen
    12 Posts

    Re: Any way to set PMO options in MPGW response rule with MQFSH?

    ‏2012-08-10T04:44:51Z  
    NO, we don't support that. Unless you use url-open to put the message in XSLT.
  • T736_Mayur_Garg
    T736_Mayur_Garg
    16 Posts

    Re: Any way to set PMO options in MPGW response rule with MQFSH?

    ‏2012-12-27T12:48:53Z  
    Hi All, Do we have any resolution to setting up PMO option putting the response in Reply Queue.

    We tried putting the EBCDIC data(response) in the Queue using xslt but we are facing challenges with that.

    Steps followed -
    We are converting the EBCDIC data to hexbinary using hexbinary.ffd.
    <dp:input-mapping href="hexBinary.ffd" type="ffd"/>

    We are doing a radix conversion from base16 to base64.
    <xsl:variable name="HexTobase64" select="dp:radix-convert($hexbinary, 16, 64)" />

    Then the base64 data we are decoding to binary.
    <xsl:variable name="HexTobinary" select="dp:binary-decode($HexTobase64)" />

    Then we are doing to a dp:url-open to put the message in the respective queue.

    <dp:url-open http-headers="$headers" target="dpmq://MQQM/?RequestQueue=XYZ;SetReplyTo=false">
    <xsl:value-of select="$HexTobinary"/>
    </dp:url-open>

    But we are getting "Error Parsing response" while putting the message into the queue.

    Kindly suggest where are we going wrong.
  • HermannSW
    HermannSW
    4874 Posts

    Re: Any way to set PMO options in MPGW response rule with MQFSH?

    ‏2012-12-27T23:18:50Z  
    Hi All, Do we have any resolution to setting up PMO option putting the response in Reply Queue.

    We tried putting the EBCDIC data(response) in the Queue using xslt but we are facing challenges with that.

    Steps followed -
    We are converting the EBCDIC data to hexbinary using hexbinary.ffd.
    <dp:input-mapping href="hexBinary.ffd" type="ffd"/>

    We are doing a radix conversion from base16 to base64.
    <xsl:variable name="HexTobase64" select="dp:radix-convert($hexbinary, 16, 64)" />

    Then the base64 data we are decoding to binary.
    <xsl:variable name="HexTobinary" select="dp:binary-decode($HexTobase64)" />

    Then we are doing to a dp:url-open to put the message in the respective queue.

    <dp:url-open http-headers="$headers" target="dpmq://MQQM/?RequestQueue=XYZ;SetReplyTo=false">
    <xsl:value-of select="$HexTobinary"/>
    </dp:url-open>

    But we are getting "Error Parsing response" while putting the message into the queue.

    Kindly suggest where are we going wrong.
    > ...
    > We tried putting the EBCDIC data(response) in the Queue using xslt but we are facing challenges with that.
    >
    > Steps followed -
    > We are converting the EBCDIC data to hexbinary using hexbinary.ffd.
    > <dp:input-mapping href="hexBinary.ffd" type="ffd"/>
    >
    why convert to hex first?

    > We are doing a radix conversion from base16 to base64.
    > <xsl:variable name="HexTobase64" select="dp:radix-convert($hexbinary, 16, 64)" />
    >
    > Then the base64 data we are decoding to binary.
    > <xsl:variable name="HexTobinary" select="dp:binary-decode($HexTobase64)" />
    >
    This will result in a BinaryNode, not sure what you want with that.

    > Then we are doing to a dp:url-open to put the message in the respective queue.
    >
    > <dp:url-open http-headers="$headers" target="dpmq://MQQM/?RequestQueue=XYZ;SetReplyTo=false">
    > <xsl:value-of select="$HexTobinary"/>
    > </dp:url-open>
    >
    <xsl:value-of ...> of a BinaryNode will always return "***BINARY-NODE***" which is Non-XML.

    > But we are getting "Error Parsing response" while putting the message into the queue.
    >
    See explanation above.

    This seems to be what you need (to pass EBCDIC encoded "binary" data to MQ):
    
    <dp:input-mapping href=
    "store:///pkcs7-convert-input.ffd" type=
    "ffd"/>   <xsl:template match=
    "/"> <!-- get Non-XML input as base64 encoded string --> <xsl:variable name=
    "input64" select=
    "dp:binary-encode(/object/message/node())"/>   <dp:url-open headers=
    "$headers" target=
    "dpmq://MQQM/?RequestQueue=XYZ;SetReplyTo=false" response=
    "ignore" data-type=
    "base64" > <xsl:value-of select=
    "$input64"/> </dp:url-open>
    


    Important is the use of data-type="base64" to pass arbitrary binary data in dp:url-open
    (base64 encoded -- we are in XML land inside a stylesheet).

    Please read&hear into these two webcasts explaining above and your problems experienced:
    http://www-01.ibm.com/support/docview.wss?uid=swg27022977
    http://www-01.ibm.com/support/docview.wss?uid=swg27022979

     
    Hermann<myXsltBlog/> <myXsltTweets/>
  • T736_Mayur_Garg
    T736_Mayur_Garg
    16 Posts

    Re: Any way to set PMO options in MPGW response rule with MQFSH?

    ‏2013-01-04T14:37:17Z  
    This Works like a Charm !!
    <dp:binary-encode(Though I still wonder why Datapower doesn't support a PMO option with MQFSH :)>

    Many Thanks Hermann.