Author |
Message
|
ein |
Posted: Mon Oct 19, 2009 10:57 pm Post subject: WTX+WMB |
|
|
Centurion
Joined: 14 Mar 2009 Posts: 108
|
Hello All,
Is Any body is worked on WTX+WMB.
I have the following problem when i am working on it.
Here is my requirement is to use comutenode + wtx node same message flow.
As per WTX requirement, The data needs to pass it as BLOB. So I have sent the data as BLOB to WTX node from compute node.
But the message flows gets failed and throws Value not added error.
Can we considered this as bug in WMB. If not can any one help me to do this.
Thanks in Advance to ALL. |
|
Back to top |
|
 |
Gaya3 |
Posted: Mon Oct 19, 2009 11:29 pm Post subject: |
|
|
 Jedi
Joined: 12 Sep 2006 Posts: 2493 Location: Boston, US
|
Did you test the WTX map flow , if not do that first [check if the WTX Map is working fine or not]
then integrate it on WMB. _________________ Regards
Gayathri
-----------------------------------------------
Do Something Before you Die |
|
Back to top |
|
 |
mvsivaiah |
Posted: Mon Oct 19, 2009 11:31 pm Post subject: |
|
|
 Apprentice
Joined: 30 May 2008 Posts: 25
|
ein,
Can you explain completely what u r doing?
First ensure your wtx map is working, then try sending blob message from MQ node to WTX, i.e. without compute node in between and see. _________________ Venkat. |
|
Back to top |
|
 |
ein |
Posted: Tue Oct 20, 2009 1:29 am Post subject: |
|
|
Centurion
Joined: 14 Mar 2009 Posts: 108
|
Hello Gaya3/mvsivaiah.
I have tested the map individaully, it is working fine.
Then i tested the flow like
Mqinput ---> WTXNode----> MQoutput node.
For this scenario it's working.
but
Mqinput ---> Compute node ----> WTX node ---> MQoutput .
it's getting failed.
Here i tried the following code option to send the data as BLOB to WTX node, But it's Failed.
In compute node
1)SET OutputRoot.BLOB.BLOB = InputRoot.XMLNSC.DATA;
2) I tried with ASBITSTREAM also But it's failed. |
|
Back to top |
|
 |
Gaya3 |
Posted: Tue Oct 20, 2009 1:40 am Post subject: |
|
|
 Jedi
Joined: 12 Sep 2006 Posts: 2493 Location: Boston, US
|
i guess you are using compute node only for convert XMLNSC to BLOB Please make it clear.
Are you doing anyother transformation logic over there in Compute node
will you try using an RCD node over there and see if its working. _________________ Regards
Gayathri
-----------------------------------------------
Do Something Before you Die |
|
Back to top |
|
 |
smdavies99 |
Posted: Tue Oct 20, 2009 2:59 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
ein wrote: |
In compute node
1)SET OutputRoot.BLOB.BLOB = InputRoot.XMLNSC.DATA;
2) I tried with ASBITSTREAM also But it's failed. |
If you were to create a properly formatted USER TRACE (not a debug) and look to see the result of
Code: |
SET OutputRoot.BLOB.BLOB = InputRoot.XMLNSC.DATA;
|
My guess would be that the output is NULL
There are plenty of posts(especially some in the past month or so) in this forum about casting an input Tree (InputRoot. XMLNSC.***) to a BLOB.
Change your code and experiment a bit and you will get there.
Basically, you are trying to change a parsed tree to a format that is a bitsteam. That is why you need to use a CAST rather than just a set. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
ein |
Posted: Tue Oct 20, 2009 6:11 am Post subject: |
|
|
Centurion
Joined: 14 Mar 2009 Posts: 108
|
Hello smdavies99,
Actually i forgot to mention in my last message. I have done the casting also. I simply typed for you people understating.
Actully my requirement is ,
I am receiving an XML Message, Which has 5 fields,
The last filed has Payload, which has to send to WTX to node.
The compute node has to take decision to which map it has to call. For this reason , the remaing 4 fileds used in this xml. |
|
Back to top |
|
 |
Gaya3 |
Posted: Tue Oct 20, 2009 6:19 am Post subject: |
|
|
 Jedi
Joined: 12 Sep 2006 Posts: 2493 Location: Boston, US
|
put a trace node after the compute node and see if you are getting the BLOB message or not.
you have to debug [do a user trace] of your ESQL code _________________ Regards
Gayathri
-----------------------------------------------
Do Something Before you Die |
|
Back to top |
|
 |
smdavies99 |
Posted: Tue Oct 20, 2009 6:53 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
ein wrote: |
Actually i forgot to mention in my last message. I have done the casting also. I simply typed for you people understating.
|
It is a lot easier for us to understand your ESQL if you do the following:-
1) Put the code inside a CODE section
2) Copy the ESQL as is from your Flow, warts and all. This way we won't have to make assumptions.
As I have said and echoed by Gaya3, put a trace node after your compte node and set it to output ${Root}. Then take a user trace, put a message through the flow and then format the output and put the relevant bits here. Please include the MQMD & Properties Folder as if you had read many of the previous posts in this forum where this very subject has been covered you will see that pieces of information from these may well (hint hint) play a part in successfully converting a parsed tree into a BLOB. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
Subha |
Posted: Tue Oct 20, 2009 7:05 pm Post subject: |
|
|
Apprentice
Joined: 14 Nov 2006 Posts: 33 Location: Toronto
|
I could understand that the map being called is dynamically set in your compute node logic. It should be set in localenvironment variable. I assume you have set the properties in compute node to pass this environment variables.
Also I would suggest you to enable tracing at map level to know whether the map is called or not.
Hope this helps. _________________ Subh |
|
Back to top |
|
 |
Gaya3 |
Posted: Wed Oct 21, 2009 12:18 am Post subject: |
|
|
 Jedi
Joined: 12 Sep 2006 Posts: 2493 Location: Boston, US
|
Subha wrote: |
I could understand that the map being called is dynamically set in your compute node logic. It should be set in localenvironment variable. I assume you have set the properties in compute node to pass this environment variables.
Also I would suggest you to enable tracing at map level to know whether the map is called or not.
Hope this helps. |
which map you are talking about, i guess you are discussing about mapping node isnt it, but ein is using WTx node [we call it as Map]
kindly do what we [smdavies99] suggested and let us know the results _________________ Regards
Gayathri
-----------------------------------------------
Do Something Before you Die |
|
Back to top |
|
 |
Subha |
Posted: Wed Oct 21, 2009 1:16 am Post subject: |
|
|
Apprentice
Joined: 14 Nov 2006 Posts: 33 Location: Toronto
|
@Gaya3
Gaya3 wrote: |
Subha wrote: |
I could understand that the map being called is dynamically set in your compute node logic. It should be set in localenvironment variable. I assume you have set the properties in compute node to pass this environment variables.
Also I would suggest you to enable tracing at map level to know whether the map is called or not.
Hope this helps. |
which map you are talking about, i guess you are discussing about mapping node isnt it, but ein is using WTx node [we call it as Map]
kindly do what we [smdavies99] suggested and let us know the results |
I meant WTX Map.
There are many ways you can invoke WTX map in a message flow.
You can either set the map name in the WTX map node or it can be set thru the ESQL.
From ein's note
"The compute node has to take decision to which map it has to call. For this reason , the remaing 4 fileds used in this xml. "
I understood that he is setting the WTX map name to be called in compute node.
@ein,
Please correct me if my understanding is wrong.
Thanks! _________________ Subh |
|
Back to top |
|
 |
ein |
Posted: Wed Oct 21, 2009 4:30 am Post subject: |
|
|
Centurion
Joined: 14 Mar 2009 Posts: 108
|
Hello Subha,
Thanks for all your reply.
In the compute node , it has pass the payload as BLOB message to WTX node .
Here i have used the route lable node to call the map dynamically.
Let me explain you my requirement clearly .
I receive an XML message which has 5 fileds. One filed name is payload. It has the real data to pass to WTX map. Remaining 4 fields are used here route the messages to corresponding maps.
Now message flow is
MQinput node ----> Compute node ---> Route Lable
Lable1 -----> WTX Node 1
Lable2 ----->WTX Node 2.
------
------
Please let me know if you need any more information. |
|
Back to top |
|
 |
Gaya3 |
Posted: Wed Oct 21, 2009 4:42 am Post subject: |
|
|
 Jedi
Joined: 12 Sep 2006 Posts: 2493 Location: Boston, US
|
we are waiting for the trace information ein
I guess its not producting the proper blob information which is required by the WTX map _________________ Regards
Gayathri
-----------------------------------------------
Do Something Before you Die |
|
Back to top |
|
 |
Subha |
Posted: Wed Oct 21, 2009 8:35 pm Post subject: |
|
|
Apprentice
Joined: 14 Nov 2006 Posts: 33 Location: Toronto
|
Hi ein,
1. As suggested by experts , put a user trace in your message flow to find out what is going into WTX node
2. Check whether the WTX map is really invoked. You can enable map tracing for the WTX map and see whether the .mtr file is getting created
3. If the map is called and it fails, you can analyze the trace file (.mtr) and find the cause.
Hope this helps.
Thanks! _________________ Subh |
|
Back to top |
|
 |
|