|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Getting data from a WCS Message |
« View previous topic :: View next topic » |
Author |
Message
|
Gary Ellwood |
Posted: Wed Jun 26, 2002 5:42 am Post subject: Getting data from a WCS Message |
|
|
Novice
Joined: 17 Apr 2002 Posts: 12
|
I am trying to read an XML message output from WebSphere Commerce into MQSI and use a Compute node to write a very small sub-set of the message out.
I've attempted to import the the DTD for the message (successfully, I think!) and map the fields in the compute node, and I've also attempted to read the message as generic XML and write ESQL to map the fields I require. Both of these methods are presently failing.
I am using the RFHUTIL to write to (and read from the queues) and this appears to display the XML and parsed data perfectly. However, both methods I have attempted so far appear to report problems with the format/structure of the message/XML.
This is the first time I have used the product 'in anger' since I attended a training course back in Feb. I'm sure I'm doing something wrong, but any advice on the best way to acheive my objectives would be appreciated.
Thanks |
|
Back to top |
|
 |
Yanghui |
Posted: Thu Jun 27, 2002 5:30 am Post subject: |
|
|
Disciple
Joined: 08 May 2002 Posts: 151 Location: Dublin, Ireland
|
You just have to get used to the WMQI way, then the anger won't stay for too long...I think...
I think you can't use generic xml domain for input since you need MRM to parse your incoming xml. (Don't forget to setup XML physical format with the message set.) However you can change to xml domain for output in Compute node.
Hope it helps
-Yanghui |
|
Back to top |
|
 |
Gary Ellwood |
Posted: Thu Jun 27, 2002 5:45 am Post subject: |
|
|
Novice
Joined: 17 Apr 2002 Posts: 12
|
Thanks for the response.
Unfortunately, my understanding is not sufficient for it to be useful! I thought a well formed XML message would be parsed without requiring MRM?
If I do use MRM and the imported DTD Message Set / Message, where do I set the physical format of the message set (Run Time Parser??).
Is it possible to be more explicit about what information I need to define for the Message / Message Set and within the Input/Compute nodes
Thanks Again |
|
Back to top |
|
 |
CodeCraft |
Posted: Fri Jun 28, 2002 6:25 am Post subject: |
|
|
Disciple
Joined: 05 Sep 2001 Posts: 195
|
A well formed XML message will be parsed happily by the generic XML parser. You do not *need* to import the DTD or using the MRM.
It would help if you gave examples of the input, the ESQL you have, the required output, and actual symptoms (error messages or incorrect output) of the problem you are having. |
|
Back to top |
|
 |
kirani |
Posted: Fri Jun 28, 2002 2:45 pm Post subject: |
|
|
Jedi Knight
Joined: 05 Sep 2001 Posts: 3779 Location: Torrance, CA, USA
|
Gary Ellwood wrote: |
Unfortunately, my understanding is not sufficient for it to be useful! I thought a well formed XML message would be parsed without requiring MRM?
|
You don't need MRM to parse well formed XML messages. However, if you decide to validate input XML messages against DTD, you need to model your input message in MRM.
Gary Ellwood wrote: |
If I do use MRM and the imported DTD Message Set / Message, where do I set the physical format of the message set (Run Time Parser??).
|
You can set the physical format for the message set by right clicking on the messageset and by selecting [b]Add->Physical Format->XML Format[b] in Control Center. Make sure you first add Physical Format to the message set before importing the DTD. Don't forget to configure your MQInput node to specify values for Message Set, Message Domain (MRM), Message Type, and Message Format (XML). Alternatively, you can specify these values in your input message itself. These will be a part of MQRFH2 header.
Gary Ellwood wrote: |
Is it possible to be more explicit about what information I need to define for the Message / Message Set and within the Input/Compute nodes
|
In your compute node you can create selfdefining xml by writing very simple ESQL code. For example,
SET OutputRoot.XML.OuterTag.InnerTag = InputRoot.MRM.OuterTag.....;
Make sure you select Copy message header only within your compute node.
Hope this helps. _________________ Kiran
IBM Cert. Solution Designer & System Administrator - WBIMB V5
IBM Cert. Solutions Expert - WMQI
IBM Cert. Specialist - WMQI, MQSeries
IBM Cert. Developer - MQSeries
|
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|