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 » Using Transaction in Webservices

Post new topic  Reply to topic
 Using Transaction in Webservices « View previous topic :: View next topic » 
Author Message
mbuserpras
PostPosted: Thu Mar 11, 2010 2:28 am    Post subject: Using Transaction in Webservices Reply with quote

Newbie

Joined: 10 Mar 2010
Posts: 3

Hi Folks
We are using WMB and WPS in our enterprise. From WMB, we are calling a Web Service exposed by WPS. Internally, the WPS implementation calls Database and Amdocs APIs. We are using SOAP/http to invoke the WPS Webservice.

I do not have any control on the architecture. I cannot avoid calling WPS from WMB. I have been mandated to use both of these.

Consider this Situation

1) WMB makes the Webservice call by soap/http. WPS webservice does its internal processing. Meanwhile, the WMB Webservice call times out. But WPS still continues with the transaction and commits it.
Can i prevent this?

I feel, if i could control the transaction from WMB, it would be good. But i am not able to do it. Someone told me WS-AT (AtomicTransaction) can help, but can i implement it using WMB 6.1.0.5/WMQ 6.0.2.5/AIX 5.3?

Request your views please

Thanks
P
Back to top
View user's profile Send private message Send e-mail
mqjeff
PostPosted: Thu Mar 11, 2010 3:16 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Why would it timeout? Why not prevent it from timing out?
Back to top
View user's profile Send private message
mbuserpras
PostPosted: Thu Mar 11, 2010 6:00 am    Post subject: Reply with quote

Newbie

Joined: 10 Mar 2010
Posts: 3

Thanks Jeff
I have a SLA within which i have to respond. It is a synchronous transaction, so i cannot wait (for long) for the Web Services to respond.

All i am trying to do is have the transaction run in a co-ordinated manner. If Message broker loses connection (because of aborts or network disruptions or some other reasons), the webservice container should not continue with downstream processings. Instead it should rollback the entire processing.

Can we achieve this?
Appreciate your help.
Back to top
View user's profile Send private message Send e-mail
JLRowe
PostPosted: Fri Mar 12, 2010 3:19 am    Post subject: Reply with quote

Yatiri

Joined: 25 May 2002
Posts: 664
Location: South East London

Does broker support WS-AT?

If not, then I guess you are out of luck.
Back to top
View user's profile Send private message Send e-mail
mbuserpras
PostPosted: Sun Mar 14, 2010 8:53 am    Post subject: Reply with quote

Newbie

Joined: 10 Mar 2010
Posts: 3

I think Broker doesn't support WS-AT. The version 6.1.0.X supports only WS-Addressing and WS-Security.

If i am out of luck, then how does so many broker users worldwide accomplish these kind of a functions? I think this is a very basic function with respect to transactions. Or am i missing something which is very evident? Can anyone please help?
Back to top
View user's profile Send private message Send e-mail
mqjeff
PostPosted: Sun Mar 14, 2010 9:36 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

It's not a very basic question with regards to transactions.

You're asking about maintaining a distributed transaction across multiple independant systems.

This is a complicated problem, and rapidly approaches Turing Completeness as you make it more general

I suspect you will find that most people use Process Server for this, since that is actually part of it's job. WPS can actually include a broker flow in a larger transaction, as I understand it.

If you have to do it in broker, and you can reliably know at some point that the transaction on the webservice has failed, you can create a compensating transaction. Or you can modify the webservice you are calling to hold the transaction open (and roll it back after some time) until it gets an acknowledgment from the broker flow.

I suspect if you look at WS-AT, you'll see that it basically does the same thing - doesn't commit a given transaction until a transactional acknowledgment has occurred.
Back to top
View user's profile Send private message
skidewd
PostPosted: Sat Mar 20, 2010 11:13 am    Post subject: Reply with quote

Novice

Joined: 20 Mar 2010
Posts: 12

Have you considered using asynchronous Request/Response nodes in WMB? In fact, WMB7 added support for SCA nodes (including async request/response), which are exactly meant for interacting with WPS server.
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 » Using Transaction in Webservices
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.