Author |
Message
|
sooryah123 |
Posted: Tue Aug 09, 2011 6:29 am Post subject: I am not able to set environment variables. |
|
|
Newbie
Joined: 09 Aug 2011 Posts: 7
|
Hi ,
I am facing a peculiar issue while setting the environment variables.
SET Environment.Broker.Accounting.Origin=UUIDASCHAR;
DECLARE rInGenerateLetterReq REFERENCE TO InputRoot.XMLNSC.nsGLReq:GenerateLetterRequest;
SET Environment.Variables.RfpId = rInGenerateLetterReq.nsGLReq:RFP_ID;
SET Environment.Variables.Colors[] = LIST{'yellow', 'green', 'blue', 'red', 'black'};
i was able to set Colors to Environment but not able to set the RfpId.
Input Message :
<GenerateLetterRequest xmlns="com.metlife.us.ins.svc.ca.docgen.request" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<RFP_ID>1234</RFP_ID>
</GenerateLetterRequest>
Last edited by sooryah123 on Tue Aug 09, 2011 6:32 am; edited 1 time in total |
|
Back to top |
|
 |
Vitor |
Posted: Tue Aug 09, 2011 6:31 am Post subject: Re: I am not able to set environment variables. |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
sooryah123 wrote: |
i was able to set Colors to Environment but not able to set the RfpId. |
And how do you know that rInGenerateLetterReq.nsGLReq:RFP_ID doesn't resolve to a NULL value?
What does the user trace tell you is going on? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
sooryah123 |
Posted: Tue Aug 09, 2011 6:39 am Post subject: Re: I am not able to set environment variables. |
|
|
Newbie
Joined: 09 Aug 2011 Posts: 7
|
sooryah123 wrote: |
Hi ,
I am facing a peculiar issue while setting the environment variables.
SET Environment.Broker.Accounting.Origin=UUIDASCHAR;
DECLARE rInGenerateLetterReq REFERENCE TO InputRoot.XMLNSC.nsGLReq:GenerateLetterRequest;
SET Environment.Variables.RfpId = rInGenerateLetterReq.nsGLReq:RFP_ID;
SET Environment.Variables.Colors[] = LIST{'yellow', 'green', 'blue', 'red', 'black'};
i was able to set Colors to Environment but not able to set the RfpId.
Input Message :
<GenerateLetterRequest xmlns="com.metlife.us.ins.svc.ca.docgen.request" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<RFP_ID>1234</RFP_ID>
</GenerateLetterRequest> |
Same code,with same WSDL,Same input others are able to set the RFPId value to ENV. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Aug 09, 2011 6:44 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
What does a user trace show is happening?
Look particularly at how namespaces are being resolved or not resolved. |
|
Back to top |
|
 |
Vitor |
Posted: Tue Aug 09, 2011 6:58 am Post subject: Re: I am not able to set environment variables. |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
sooryah123 wrote: |
Same code,with same WSDL,Same input others are able to set the RFPId value to ENV. |
So what does a user trace say is going wrong in your case? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
sooryah123 |
Posted: Tue Aug 09, 2011 7:22 am Post subject: Re: I am not able to set environment variables. |
|
|
Newbie
Joined: 09 Aug 2011 Posts: 7
|
Vitor wrote: |
sooryah123 wrote: |
Same code,with same WSDL,Same input others are able to set the RFPId value to ENV. |
So what does a user trace say is going wrong in your case? |
The variable is not set to environment.Am using WMB7 version,How cum same code is working other machines and why not in my machine. |
|
Back to top |
|
 |
Vitor |
Posted: Tue Aug 09, 2011 7:27 am Post subject: Re: I am not able to set environment variables. |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
sooryah123 wrote: |
The variable is not set to environment. |
Got that before.
sooryah123 wrote: |
Am using WMB7 version |
Got that now.
sooryah123 wrote: |
How cum same code is working other machines and why not in my machine. |
Well how the **** should I know?
I'm psychotic not psychic.
You've been told multiple times to take a user trace so you can find out why it doesn't work on your machine. Why not take a user trace and find out why it doesn't work on your machine rather than repeatedly ask a bunch of strangers on the Internet with no knowledge of your site or situation to guess why it's not working? _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
Vitor |
Posted: Tue Aug 09, 2011 7:30 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Do not post back "But I can see in the debugger it's not being set".
Or you'll have my need for more blood pressure meds on your karma. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
kotagiriaashish |
Posted: Tue Aug 09, 2011 9:47 am Post subject: |
|
|
 Disciple
Joined: 06 Aug 2011 Posts: 165
|
how to take a user trace...
Code: |
This is how we can get the user trace on message broker by running these MQSI commands on the broker command console [the console is located in C:\Program Files\IBM\MQSI\6.1\bin\mqsiprofile.cmd ], and navigate to the bin folder, simple DIR command will list you all the MQSI available on that filder. coming to the parameters the most important one is -L property
-l level(Optional) Set the level of the trace. This must be one of:
normal. This provides a basic level of trace information.
none. This sets tracing off.
debug. This provides a more comprehensive trace.
-e egName
(Required for user trace; optional for service trace) Identifies the execution group for which trace options are to be modified (for example, started or stopped). This option is only valid for a broker.
On z/OS, this name is case sensitive and you should include the names in single quotes if they contain mixed case characters.
mqsichangetrace WBRK61_DEFAULT_BROKER -u -e default -l debug -r
mqsireadlog WBRK61_DEFAULT_BROKER -u -e default -o C:\Books\Trace.xml
mqsiformatlog -i C:\Books\Trace.xml -o C:\Books\Trace.txt |
|
|
Back to top |
|
 |
mqjeff |
Posted: Tue Aug 09, 2011 9:54 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
|
Back to top |
|
 |
sooryah123 |
Posted: Wed Aug 10, 2011 1:50 am Post subject: |
|
|
Newbie
Joined: 09 Aug 2011 Posts: 7
|
Vitor wrote: |
Do not post back "But I can see in the debugger it's not being set".
Or you'll have my need for more blood pressure meds on your karma. |
Thanks for your input.I am very much new to WMB.PFB the user trace.
2011-08-10 15:12:58.380104 6100 UserTrace BIP2566I: Node 'ClientAcq_Temp.Compute': Assigning value '''32b7847d-d694-469f-aeba-e1415adf82b2''' to field / variable ''Environment.Broker.Accounting.Origin''.
2011-08-10 15:12:58.381923 6100 UserTrace BIP2537I: Node 'ClientAcq_Temp.Compute': Executing statement ''DECLARE rInGenerateLetterReq REFERENCE TO InputRoot.XMLNSC.nsGLReq:GenerateLetterRequest;'' at ('.ClientAcq_Temp_Compute.Main', '5.3').
2011-08-10 15:12:58.382064 6100 UserTrace BIP2543I: Node 'ClientAcq_Temp.Compute': ('.ClientAcq_Temp_Compute.Main', '5.45') : Failed to navigate to path element number '3' because it does not exist.
2011-08-10 15:12:58.382122 6100 UserTrace BIP2537I: Node 'ClientAcq_Temp.Compute': Executing statement ''SET Environment.Variables.RfpId = rInGenerateLetterReq.nsGLReq:RFP_ID;'' at ('.ClientAcq_Temp_Compute.Main', '6.3').
2011-08-10 15:13:02.085809 6100 UserTrace BIP2543I: Node 'ClientAcq_Temp.Compute': ('.ClientAcq_Temp_Compute.Main', '6.37') : Failed to navigate to path element number '2' because it does not exist.
2011-08-10 15:13:02.085901 6100 UserTrace BIP2539I: Node 'ClientAcq_Temp.Compute': Evaluating expression ''rInGenerateLetterReq.nsGLReq:RFP_ID'' at ('.ClientAcq_Temp_Compute.Main', '6.37'). This resolved to ''rInGenerateLetterReq.nsGLReq:RFP_ID''. The result was ''EMPTY ROW''. |
|
Back to top |
|
 |
mapa |
Posted: Wed Aug 10, 2011 2:12 am Post subject: |
|
|
 Master
Joined: 09 Aug 2001 Posts: 257 Location: Malmö, Sweden
|
Hmm, have you declared the namespace?
My guess is that you haven't.
Code: |
DECLARE nsGLReq NAMESPACE 'yournamespace-URI';
|
|
|
Back to top |
|
 |
sooryah123 |
Posted: Wed Aug 10, 2011 2:48 am Post subject: |
|
|
Newbie
Joined: 09 Aug 2011 Posts: 7
|
mapa wrote: |
Hmm, have you declared the namespace?
My guess is that you haven't.
Code: |
DECLARE nsGLReq NAMESPACE 'yournamespace-URI';
|
|
Thanks..its working..i was wondered why it was working for others without declaring namespace.I thought we are reading from input which already contains namespace declaration.But deployed code which is running in production(exactly similar application)doent't have namespace declaration in esql.Can you please clarify me how the production and other machins.. |
|
Back to top |
|
 |
mapa |
Posted: Wed Aug 10, 2011 3:00 am Post subject: |
|
|
 Master
Joined: 09 Aug 2001 Posts: 257 Location: Malmö, Sweden
|
It is most likely not exactly the same code the others are using, if so it wouldn't work in production.
They are not using XMLNSC and processing messages with namespaces successfully with the syntax you used...
Are you familiar with the message domains?
If not I suggest you look into that. _________________ Brgds, Magnus Palmér
Enfo Zystems |
|
Back to top |
|
 |
Vitor |
Posted: Wed Aug 10, 2011 4:18 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
sooryah123 wrote: |
Thanks..its working.. |
You could have checked namespace declaration when it was mentioned by my most worthy associate earlier & saved yourself some time.
sooryah123 wrote: |
But deployed code which is running in production(exactly similar application)doent't have namespace declaration in esql.Can you please clarify me how the production and other machins.. |
You can't have "exactly similar" - it's either exactly the same, or it's similar. Saying "exactly similar" is in that class of soundbites with "practically identical". Imagine if someone posted "my machine can't reach this IP address but others can. The configuration of the machines is practically identical except for 1 digit in the IP address".
The deployed code is not the same as your code. It's similar. It works because it's able to resolve the namespace. Yours could not.
And now you know about user trace. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
|