|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
XML - Automatic generation of elements in WBIMB |
« View previous topic :: View next topic » |
Author |
Message
|
DAS |
Posted: Thu Aug 25, 2005 5:19 am Post subject: XML - Automatic generation of elements in WBIMB |
|
|
Apprentice
Joined: 15 Aug 2005 Posts: 30
|
I would imagine that it's possible to let the broker generate XML elements in the output message, without referring to them in the ESQL source of a compute node.
We want to generate an XML message based on a XSD, without manually filling in every individual element in the ESQL source of the compute node that builds up the entire message.
Let's say for instance that we have an input message with 5 different elements, for which each element should be mapped 1-to-1 to the responding output message.
Normally, you would fill in these elements manually in the ESQL source, but obviously you don't want to do that in some occasions.
Is it possible to do this and if yes, how? It would also be very nice if it's possible to let the broker fill in default values, when set in the message-set. For all tests we have performed, it seems that the broker does not fill in the defaults, not even when they are set in the message definition.
According to the manual:
WBIMB integrated help wrote: |
If a Default value is set for an object and a message is received, the value of the object is set to the data received from the object in the message.
If no object information is received in the message then the default value that you set here is used to populate the object property.
|
We use version 5 of the WMB broker.
Thanks in advance! |
|
Back to top |
|
 |
kimbert |
Posted: Thu Aug 25, 2005 6:23 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
The broker only populates default values when writing a fixed-length message (CWF, or fixed-length TDS). You are not the first to ask for more extensive support for default values, so it is a known requirement.
The other point about copying from input to output is easier - just do something like
Code: |
Set OutputRoot.MRM.RootElement = InputRoot.MRM.RootElement |
|
|
Back to top |
|
 |
DAS |
Posted: Thu Aug 25, 2005 6:45 am Post subject: |
|
|
Apprentice
Joined: 15 Aug 2005 Posts: 30
|
Thank you for your reply, though this is a really sad fact if you consider the fact XML is a de-facto standard.
About the copying from input to output, this obviously only works when input and output message definitions are equal and that's almost never the case.
Overall, thanks. |
|
Back to top |
|
 |
kimbert |
Posted: Fri Aug 26, 2005 12:04 am Post subject: |
|
|
 Jedi Council
Joined: 29 Jul 2003 Posts: 5542 Location: Southampton
|
Quote: |
for which each element should be mapped 1-to-1 to the responding output message |
If the input and output message definitions are not equal, then it's not a 1-1 mapping! |
|
Back to top |
|
 |
DAS |
Posted: Sat Aug 27, 2005 3:25 am Post subject: |
|
|
Apprentice
Joined: 15 Aug 2005 Posts: 30
|
Yes you are right, it's my mistake of not mentioning the fact I also want this to be functional for different mappings.
Let's stress out the problem a little bit more:
First of all it's good to mention we are using a simple MQInput->Compute->MQOutput scheme.
Now consider an input message consisting of about 20 fields in which you only want to map 5 fields to the fields in the output message. But, let's say the output message also has to contain 20 fields to comply to the message definition given for the output message, then we would like to see that the other 15 unmapped fields are handled by the broker itself, for example by generating mandatory fields automatically and filling in fields with default values. Because of the simple fact this information is completely contained in the appropriate message definition that belongs to the output message, you do not have to be a mastermind to see that it's ridiculous that nothing is done with the information.
It's even more strange to see that default values in an XSD are parsed correctly in the WMB Toolkit, but presumably nothing is done with them.
In the given example we would have to fill in all the 15 fields by hand in the ESQL of a compute node to make sure we are building up a valid message.
In short:
Considering the fact we believe that WMB should handle all of the facets of XML intrinsics it is simply absurd that support for XML default values and the automatic generation of mandatory fields is not present in the current packages.
I really hope to see my findings to be not completely true. |
|
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
|
|
|
|