|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Method to use for dynamic URL selection |
« View previous topic :: View next topic » |
Author |
Message
|
sankritya |
Posted: Tue Nov 30, 2010 8:41 am Post subject: Method to use for dynamic URL selection |
|
|
Centurion
Joined: 14 Feb 2008 Posts: 100
|
Hi All,
I have a requirement to set the URL dynamically before a SOAP Request based on certain input parameter available in Input Message. I can figure out following ways for doing so
1. Use SHARED Variable
2. Use Queue for storing the XML containing URL related Information
3. Use Database Table
4. IA91 support pack
Option 1 has certain limitations as this can not be used across the EG and update for the SHARED Variable.
Option2 has been used successfully although it increases the complexity
Option3 Most reliable but has performance impact
I have not used the IA91 support pack. Please help me understanding whether IA91 has any limitations and if it is better than other options.
Around 100 URL's need to kept in the memory.
Please suggest whether using IA91 will be helpful in terms of performance, updates and maintainability.
Environment : Broker 6.1.0.2 in UNIX |
|
Back to top |
|
 |
mgk |
Posted: Tue Nov 30, 2010 8:52 am Post subject: |
|
|
 Padawan
Joined: 31 Jul 2003 Posts: 1642
|
Quote: |
I have a requirement to set the URL dynamically before a SOAP Request based on certain input parameter available in Input Message |
If the URL is always in the input message, why not just set it dynamically for every message from the information in the message. This will be the simplest way...
E.G. For every message just use:
Code: |
SET OutputLocalEnvironment.Destination.SOAP.Request.Transport.HTTP.WebServiceURL =InputRoot.<myMessageLocation>; |
Kind regards, _________________ MGK
The postings I make on this site are my own and don't necessarily represent IBM's positions, strategies or opinions. |
|
Back to top |
|
 |
mqjeff |
Posted: Tue Nov 30, 2010 9:00 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
I suppose the SOAPRequest node doesn't bind as tightly to a specific WSDL as the SOAPInput node does.
It doesn't sound like the actual URL is really in the message, just one or more input fields that determine which URL should be called.
It's not clear why the URLs need to be stored anywhere other than in configurable properties in the BAR file, and accessed as EXTERNAL variables from ESQL. It doesn't seem likely that the URLs themselves will be changing during the lifetime of the deployed flow...
sankritya - all of the techniques you have mentioned are good for *sharing* changeable data that gets altered during the running life of a flow. Are you really going to be updating these URLS? Or just selecting from a fixed list? Even if you want to allow for the set of URLS to change dynamically, you can update the BAR file and redeploy the flow without any real impact.
If, somehow, you need to have the list of URLS managed by business users - then you will want to stick it in a database that can be managed from a web-interface. But it's hard to believe this is needed. |
|
Back to top |
|
 |
smdavies99 |
Posted: Tue Nov 30, 2010 9:03 am Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
Your question about IA91 etc is a common on (but not seen for a while...)
The best method depends upon how often the values are going to change.
For pretty well static data then a combination of the Shared Variable AND a DB table probably works the best.
In this scenario, you store the data in a table and only read the table if there is not data in the shared variables.
Then you have a timer node->compute node section that does perioding reads of the data from the table to refresh the contents of the Shared Variable.
This way there is no overhead and you are guaranteed to get regular updates of the data thus picking up changes.
you could yse other methods to trigger the refresh such as a stop/start of the flow. _________________ 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 |
|
 |
|
|
 |
|
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
|
|
|
|