ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » copying the orginal message

Post new topic  Reply to topic
 copying the orginal message « View previous topic :: View next topic » 
Author Message
amigupta1978
PostPosted: Thu Jan 24, 2002 2:02 pm    Post subject: Reply with quote

Centurion

Joined: 22 Jan 2002
Posts: 132
Location: India

Hi all,
One other question..

I have a scenario in which I have to pass the message to another node in the MRM format and also retain the original XML input message. The way we have implemented this is we changed the Root.Properties to the "MRM" and populated the MRM structure and also copied the message body to the DestinationList Structure.And after the node which uses the MRM message we again changed the MessageBody to what we copied on to the DestinationList. But we have a problem here since when we copy a XML to the DestinationList structure it actually discards all the attributes.
i.e say original message contains <name id="10">Amit</name> , then after copying to DestinationList the value becomes <name>Amit</name>. It discards every attributes. Does anybody knows the sloution how to overcome this problem and how to do the things.

Thanks in Advance
Regards
Amit
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
mpuetz
PostPosted: Fri Jan 25, 2002 7:05 am    Post subject: Reply with quote

Centurion

Joined: 05 Jul 2001
Posts: 149
Location: IBM/Central WebSphere Services

Hi,

the DestinationList parser is only partly compatible with
the XML parser. As you already found out this affects
XML attributes which cannot be created in the DestinationList
parser and hence are dropped by the tree copy routine.
There is really nothing you can do about that, sorry.
However you should be able to have both XML and MRM trees next to each other
in your message tree as long as you don't do anything which causes
the selected main parser (OutputRoot.Properties.MessageDomain)
to render the message tree. This is triggered by calling the BITSTREAM
function, a ResetContentDescriptor Node or an Output Node. If there
are two message body in your message tree these can get confused may fail.



_________________
Mathias Puetz

IBM/Central WebSphere Services
WebSphere Business Integration Specialist
Back to top
View user's profile Send private message
amigupta1978
PostPosted: Fri Jan 25, 2002 1:25 pm    Post subject: Reply with quote

Centurion

Joined: 22 Jan 2002
Posts: 132
Location: India

Hi,
Thanks for the suggestion . But We still have the problen if we take the two things in the Body. Since the MRM which I am talking about is passed to the CICS adapter which is expecting a fixed number of bytes , so what I think that we let remain the two things i.e both the XML and the MRM then the CICS thing would fail I suppose,
So I have to set the Message Domain to the MRM since I want only the MRM thing to go to CICS adapter.

But I got one work around, by using the BITSTREAM of the InputBody and storing it into DestinationList and using it again to make my MXL message.

Thanks for the reply, any more suggestions are welcome since I am still in the search of the best option to get the thing work

Regards,
Amit
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
mpuetz
PostPosted: Sat Jan 26, 2002 1:15 pm    Post subject: Reply with quote

Centurion

Joined: 05 Jul 2001
Posts: 149
Location: IBM/Central WebSphere Services

Hi,

just eliminate one of the message trees (in your XML)
one step before you go through your output node.
(i.e. in one compute node SET OutputRoot.XML = NULL)
Then your output node should only render the MRM message
tree and CICS is happy.
If you need the XML message *after* your output node,
I suggest you rearrange your flow slightly using a flow-order-node,
i.e. you first propagate through your CICS output flow
and eliminate the XML message as mentioned above.
In your second step of the flow-order-node you can still
use the XML tree.
Quite generally I recommend using flow-order-nodes frequently
to avoid carrying bloated message trees around, which cost performance,
memory and stack.

Your workaround is OK if you don't have to worry about
performance, since parsing the XML message again is
costly.


_________________
Mathias Puetz

IBM/Central WebSphere Services
WebSphere Business Integration Specialist
Back to top
View user's profile Send private message
amigupta1978
PostPosted: Mon Jan 28, 2002 1:38 pm    Post subject: Reply with quote

Centurion

Joined: 22 Jan 2002
Posts: 132
Location: India

Hi,
Thanx for providing the solution.

But this solution doesnot work in our scenario. Let me explain our scenario.
MQInput Node -> ComputeNode1 -> CICS adapter node -> ComputeNode2->MQOutputNode
In our scenario the message being input is in XML domain and in Compute1 we translate the XML into appropriate MRM as reqd by the CICS node. Now the CICS node also gives me some output (saying the success or failure) in the MRM format which we again have to convert into XML format and add this information to our original input message and go for the output.
Now if we use the flow order node before or even after the Compute Node 1 to achieve the MRM and XML messages seprately I will not be able to rejoin both the messages as I need the output from my CICS node and append this output to the original input message. (Since FlowOrder will only give me the original input message and not the combined one)
My main concern is to rejoin both the message and then proceed.
Am I right or do you have some other solution or way to achieve the solution?

More suggestions are welcome since reparsing XML is really very costly.

Thanks in advance.
Regards
Amit

Back to top
View user's profile Send private message Send e-mail Yahoo Messenger
mpuetz
PostPosted: Mon Feb 04, 2002 8:40 am    Post subject: Reply with quote

Centurion

Joined: 05 Jul 2001
Posts: 149
Location: IBM/Central WebSphere Services

Hi,

in your situation you are really at a lost position then,
and converting XML to BLOB and storing it in the destination
list as you now do is the only solution with MQSI 2.0.x.
In 2.1 you can use the GobalEnvironment without the need to
reparse.


_________________
Mathias Puetz

IBM/Central WebSphere Services
WebSphere Business Integration Specialist
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » copying the orginal message
Jump to:  



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
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.