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 » Access udp from mapping node in subflow

Post new topic  Reply to topic Goto page 1, 2  Next
 Access udp from mapping node in subflow « View previous topic :: View next topic » 
Author Message
Sosed
PostPosted: Mon Jun 17, 2013 7:04 am    Post subject: Access udp from mapping node in subflow Reply with quote

Apprentice

Joined: 24 Aug 2012
Posts: 43

Hello everybody!

I am trying to access user-defined property from mapping node through custom esql.

I have defined property in subflow:
Code:
DECLARE systemId EXTERNAL CHARACTER '';

I have created udp on udp tab of message flow editor and give it value 'sys1'.
Than, I have created function:
Code:

CREATE FUNCTION getSystemId() RETURNS CHARACTER
BEGIN         
   RETURN systemId;
END;

I have tried to get udp's value through this function. But it returns ''.
I have put compute node after mapping node and I have written esql:
Code:
SET Environment.Variables.usr.systemId = systemId;

When I have run flow, I can see right value 'sys1' in environment via debugger, and wrong value '' in message body.

Why is that happes?
How can I access udp from mapping node?
Back to top
View user's profile Send private message
Sosed
PostPosted: Mon Jun 17, 2013 7:15 am    Post subject: Reply with quote

Apprentice

Joined: 24 Aug 2012
Posts: 43

h'm! It worked...
I have only replace property from a group 'System' to a basic property group and deploy one more time...

So, is there another way to access udp from mapping node?

Thank in advance!
Back to top
View user's profile Send private message
zhumingvictor
PostPosted: Thu Jun 20, 2013 4:52 am    Post subject: Reply with quote

Novice

Joined: 10 May 2013
Posts: 17

I did the same way as you did but it only worked when deploy project directly to EG but if I build a Bar file and deploy the bar file it won't work. How did you deploy?
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Thu Jun 20, 2013 4:56 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

zhumingvictor wrote:
I did the same way as you did but it only worked when deploy project directly to EG but if I build a Bar file and deploy the bar file it won't work. How did you deploy?


You need to learn how to run mqsireadbar and examine its output.

There is nothing wrong with the product. UDPs work. We use them every day in many flows.

By the way, deploying directly to EG from toolkit is not a production-ready environment.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
Sosed
PostPosted: Thu Jun 20, 2013 5:55 am    Post subject: Reply with quote

Apprentice

Joined: 24 Aug 2012
Posts: 43

Hi, zhumingvictor!

zhumingvictor wrote:
I did the same way as you did but it only worked when deploy project directly to EG but if I build a Bar file and deploy the bar file it won't work. How did you deploy?


I deployed flows only from broker (it's a test broker), but you made me doubt. I was confused, when I did nothing and error disappeared. If I find out, what was the reason of such error, I will tell you.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Jun 20, 2013 6:10 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

When you drag & drop a project onto a broker in Toolkit, it generates a BAR file for you, so there's really no such thing as "deploying without a BAR file".

If you're having trouble accessing things from within subflows, I encourage you highly to make sure you are at 8.0.0.2. There are a number of unfortunate bugs in this area at 8.0.0.0 and 8.0.0.1.

Are you compiling and inlining your flows in your BAR file or are you deploying them per v8 normal practice? (there's a checkbox in the BAR file).

Is the mapping node in the same subflow as the UDP or is it in the mainflow?

Did you set the value of the UDP on the node that represents the subflow in the mainflow?

Is the DECLARE esql statement in the same broker schema as the function that accesses it?
Back to top
View user's profile Send private message
zhumingvictor
PostPosted: Thu Jun 20, 2013 6:57 am    Post subject: Reply with quote

Novice

Joined: 10 May 2013
Posts: 17

All environments are 8.0.0.3. The UDPs are defined in the same flow as mapping node.

Actually the bar file was build using command line, at the beginning we build it using default parameters which compiled a flow to .cmf file and a mapping node in that flow uses a custom esql. Then in run time broker complains it cannot find that esql I thought because the esql file is not in the bar then we added include source files parameter. The this strange behavior start happening.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Jun 20, 2013 7:29 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

is it build from the command line using mqsicreatebar or mqsipackagebar?
Back to top
View user's profile Send private message
zhumingvictor
PostPosted: Thu Jun 20, 2013 8:20 am    Post subject: Reply with quote

Novice

Joined: 10 May 2013
Posts: 17

mqjeff wrote:
is it build from the command line using mqsicreatebar or mqsipackagebar?

We use mqsicreatebar
Back to top
View user's profile Send private message
mqjeff
PostPosted: Thu Jun 20, 2013 8:24 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Is the ESQL statement that creates the UDB in the same subflow as the mapping node/udp?

Are they all in the same broker schema with the accessor function?

Did you set the value of the UDP on the node that represents the subflow in the mainflow?
Back to top
View user's profile Send private message
zhumingvictor
PostPosted: Thu Jun 20, 2013 9:02 am    Post subject: Reply with quote

Novice

Joined: 10 May 2013
Posts: 17

mqjeff wrote:
Is the ESQL statement that creates the UDB in the same subflow as the mapping node/udp?

Are they all in the same broker schema with the accessor function?

Did you set the value of the UDP on the node that represents the subflow in the mainflow?


The custom esql, mapping node and UDP are all in main flow. All the esql are in the default schema but flows are in their own schema.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Thu Jun 20, 2013 9:17 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

zhumingvictor wrote:
mqjeff wrote:
Is the ESQL statement that creates the UDB in the same subflow as the mapping node/udp?

Are they all in the same broker schema with the accessor function?

Did you set the value of the UDP on the node that represents the subflow in the mainflow?


The custom esql, mapping node and UDP are all in main flow. All the esql are in the default schema but flows are in their own schema.


Don't ever use the default schema. You should be defining a schema for each group of artifacts in your project.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
zhumingvictor
PostPosted: Thu Jun 20, 2013 12:19 pm    Post subject: Reply with quote

Novice

Joined: 10 May 2013
Posts: 17

lancelotlinc wrote:
zhumingvictor wrote:
mqjeff wrote:
Is the ESQL statement that creates the UDB in the same subflow as the mapping node/udp?

Are they all in the same broker schema with the accessor function?

Did you set the value of the UDP on the node that represents the subflow in the mainflow?


The custom esql, mapping node and UDP are all in main flow. All the esql are in the default schema but flows are in their own schema.


Don't ever use the default schema. You should be defining a schema for each group of artifacts in your project.

So default schema is the cause?
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Fri Jun 21, 2013 3:44 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

zhumingvictor wrote:
lancelotlinc wrote:
zhumingvictor wrote:
mqjeff wrote:
Is the ESQL statement that creates the UDB in the same subflow as the mapping node/udp?

Are they all in the same broker schema with the accessor function?

Did you set the value of the UDP on the node that represents the subflow in the mainflow?


The custom esql, mapping node and UDP are all in main flow. All the esql are in the default schema but flows are in their own schema.


Don't ever use the default schema. You should be defining a schema for each group of artifacts in your project.

So default schema is the cause?


The cause may be your lack of understanding for how to properly use the tools provided to you to determine root cause. Such as mqsireadbar.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
Sosed
PostPosted: Thu Jul 25, 2013 12:46 am    Post subject: Reply with quote

Apprentice

Joined: 24 Aug 2012
Posts: 43

Hi, guys!

I have the same problem, again. I couldn't get UDP's value after broker (or execution group) restart.

Broker is 8002.
I have subflow with mapping node, esql-file with procedures:
Code:
DECLARE systemId EXTERNAL CHARACTER '';
DECLARE mrf EXTERNAL CHARACTER '';
DECLARE systemNum EXTERNAL CHARACTER '';

CREATE PROCEDURE getSystemId2() RETURNS CHARACTER
BEGIN
   RETURN systemId;
END;

CREATE PROCEDURE getMrf2() RETURNS CHARACTER
BEGIN
   RETURN mrf;
END;

CREATE PROCEDURE getSystemNum2() RETURNS CHARACTER
BEGIN
   RETURN systemNum;
END;

Subflow, map file, esql file - all are in the same schema.

I deploy via toolkit ("drug and drop", create bras). When application is deployed - all procedures returns right UDP's value. But after broker restart (or eg restart), all procedures returns empty string.
What could be a reason of such problems?

Thanks in advance!
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Access udp from mapping node in subflow
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.