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 » WSDL Versioning

Post new topic  Reply to topic
 WSDL Versioning « View previous topic :: View next topic » 
Author Message
pottas
PostPosted: Tue Mar 25, 2008 11:27 pm    Post subject: WSDL Versioning Reply with quote

Disciple

Joined: 27 Oct 2005
Posts: 185
Location: South Africa

I am running WMB 6.1
I have the following issue I need to resolve:
We have the requirement to design a flow that uses SOAP/HTTP as an exposed Web Service. The definition of the WSDL is designed to contain the version within the namespace:
Quote:
xmlns:cus="http://contracts.it.nednet.co.za/services/customer-services/2007-07-21/Customer

So, when we get a new version of the WSDL I would like to have the capability to run both versions of the WSDLs at the same time based on who-ever wants to consume this service.

So this is my proposal (and this is where I need assistance, please...):
I'm thinking of having a Compute node in my flow that interrogates the namespace to validate the version and then based on that use the correct WSDL version.

Is this the only option I have or can I handle it a different way?

Thanks in advance
pottas
Back to top
View user's profile Send private message
AkankshA
PostPosted: Wed Mar 26, 2008 12:04 am    Post subject: Reply with quote

Grand Master

Joined: 12 Jan 2006
Posts: 1494
Location: Singapore

So with each incoming message u ll first extract the namespaces and then validate it wrt corresponding wsdl

sound coooool


_________________
Cheers
Back to top
View user's profile Send private message Visit poster's website
pottas
PostPosted: Wed Mar 26, 2008 1:32 am    Post subject: Reply with quote

Disciple

Joined: 27 Oct 2005
Posts: 185
Location: South Africa

Yep, I think this will be the way to go AkankshA - unless someone else has a better option??
The other consideration I have to take into account is the matter of 'Regression testing'. This is a swearword in our environment... so when I get a new version of the WSDL, I would like to have the LEAST impact on the existing flow as well as not having to re-test the existing services that is based on the previous versions of the WSDLs.
Any suggestions out there?
Thanks.
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Wed Mar 26, 2008 1:47 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

I think you can just deploy all of the WSDLs and let Broker decide which one to validate against, and then use the namespace to find out which one you got.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
pottas
PostPosted: Wed Mar 26, 2008 1:55 am    Post subject: Reply with quote

Disciple

Joined: 27 Oct 2005
Posts: 185
Location: South Africa

So what you are suggesting jeff is to have all the WSDLs deployed in your execution group and have a flow that basically looks like:
Quote:
HTTPInput --> Compute --> RCD --> HTTPReply

...where the Compute interrogates the namespace and picks the correct WSDL?
Back to top
View user's profile Send private message
kimbert
PostPosted: Wed Mar 26, 2008 2:19 am    Post subject: Reply with quote

Jedi Council

Joined: 29 Jul 2003
Posts: 5542
Location: Southampton

Quote:
I think you can just deploy all of the WSDLs and let Broker decide which one to validate against, and then use the namespace to find out which one you got.
That would only work if you had a single message set containing all the different WSDLs.

Pottas wants to minimise regression testing, so maybe this would work:
- One message set per WSDL version
- Compute node ( or perhaps Filter / RouteToLabel node? ) selects a processing path or even a subflow for each WSDL version
- Each processing path or subflow contains a Validate node which specifies the message set,

Make sure that you leave 'Parse Timing' set to 'On demand' on the input node, otherwise you will parse the entire message when you only need to parse the root tag ( to discover its namespace ).
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 » WSDL Versioning
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.