We've implemented thread-safe solution by maintaining a commons pool of client stubs. When a thread needs to access the axis client it simply removes a stub from the pool. This strategy has worked well for us.
--- On Wed, 12/10/08, Paul French <[email protected]> wrote: > From: Paul French <[email protected]> > Subject: RE: thread safe axis2 client stub > To: [email protected] > Date: Wednesday, December 10, 2008, 11:13 AM > Yes that is one solution but that means creating a pool of > client stub > objects (much like a database connection pool) or storing a > client stub in a > Thread local variable which isn't great if you have a > lot of threads running > in your servlet container. > > For a web service call over HTTP fundamentally all you are > doing is creating > a connection to a http server writing some text and getting > a response back > as text and closing the connection. There is no need to > share read/write > state across threads. I cannot see why a client stub cannot > be made thread > safe? > > > > _____ > > From: Kraus, David [mailto:[email protected]] > Sent: 10 December 2008 16:56 > To: [email protected] > Subject: RE: thread safe axis2 client stub > > > > I would think that there is no need to create a new client > stub for each web > service call. You just need to be sure you create a > separate stub for each > client thread. On each thread you can make as many web > service calls as you > like using the same proxy. > > > > _____ > > From: Paul French [mailto:[email protected]] > Sent: Wednesday, December 10, 2008 4:37 AM > To: [email protected] > Subject: RE: thread safe axis2 client stub > > > > Can anyone comment on this? It is a major issue for us. > > > > Why is the client stub created not thread safe? > > > > If it cannot be made thread safe then how can you avoid the > huge overhead of > instantiating a new client stub per web service call? > > > > _____ > > From: Shehan Simen [mailto:[email protected]] > Sent: 10 December 2008 01:24 > To: [email protected] > Subject: RE: thread safe axis2 client stub > > Yes, I am expecting an answer from someone who develop the > axis2. It is very > inefficient to create a stub for each call. > > > > Regards, > > Shehan > > > > From: Paul French [mailto:[email protected]] > Sent: 2008-12-10 03:29 > To: [email protected]; 'David Ojeda' > Subject: RE: thread safe axis2 client stub > > > > http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20stub%20t > hread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results > > > > > > _____ > > From: David Ojeda [mailto:[email protected]] > Sent: 09 December 2008 16:16 > To: [email protected] > Subject: Re: thread safe axis2 client stub > > I am also interested in this matter. I would like to hear > Deepal's opinion, > since he was the one who said that it is not thread safe. > > Paul: > > You said: > > > The link below suggests some tricks you can do to make > things more > > > efficient. What are these tricks? > > What link? > > Cheers, > > David > > On Tuesday 09 December 2008 11:50:31 Paul French wrote: > > > This seems strange to me that the client stub cannot > be made thread safe. > > > > > > After reading the below I have changed my client > service to create the > > > client stub on each call to one of my service methods > since the client > stub > > > is not thread safe. > > > > > > I have no idea how inefficient this is? I have noticed > that every time I > > > create the client stub (for each and every call) I get > the message: > > > > > > `[INFO] Deploying module: metadataExchange - > > > file:/C:/downloads/axis2/axis2-1.4.1/lib/mex-1.4.1.jar > > > > > > It suggests a lot of work is going on to simply > service a single web > > > service call. > > > > > > The link below suggests some tricks you can do to make > things more > > > efficient. What are these tricks? > > > > > > Thanks > > > Paul > > > > > > _____ > > > > > > From: Amila Suriarachchi > [mailto:[email protected]] > > > Sent: 09 December 2008 04:26 > > > To: [email protected] > > > Subject: Re: thread safe axis2 client stub > > > > > > > > > I was not aware of this. If the axis2 design not > permits this it is better > > > not to use it. > > > > > > thanks, > > > Amila. > > > > > > > > > On Mon, Dec 8, 2008 at 10:00 AM, Shehan Simen > <[email protected]> wrote: > > > > > > > > > Also this link: > > > > > > > http://markmail.org/message/iif5rdpgqahk4u5t#query:axis2%20client%20stub%20 > > >t > hread%20safe+page:2+mid:eenup3ck5ib6fzqq+state:results > > > > > > > > > > > > > > > > > > From: Amila Suriarachchi > [mailto:[email protected]] > > > Sent: 2008-12-08 15:26 > > > > > > > > > To: [email protected] > > > Subject: Re: thread safe axis2 client stub > > > > > > > > > > > > > > > > > > I have tested with Axis2 1.4 and it worked fine. can > you please send the > > > mail thread you mentioned? > > > > > > thanks, > > > Amila. > > > > > > On Mon, Dec 8, 2008 at 9:48 AM, Shehan Simen > <[email protected]> wrote: > > > > > > Hi Amila, > > > > > > Thank you for your response. But I found in some > discussion, it is saying > > > that the client stub is not thread safe. Is this > problem fixed now? In > > > which version I can find it then? > > > > > > > > > > > > Regards, > > > > > > Shehan > > > > > > > > > > > > From: Amila Suriarachchi > [mailto:[email protected]] > > > Sent: 2008-12-08 15:13 > > > To: [email protected] > > > Subject: Re: thread safe axis2 client stub > > > > > > > > > > > > yes > > > > > > thanks, > > > Amila. > > > > > > On Mon, Dec 8, 2008 at 9:31 AM, Shehan Simen > <[email protected]> wrote: > > > > > > Hi, > > > > > > I am going to invoke a web service via a client stub > generated by axis2. > > > > > > I want to have a single instance of the stub across my > application. > > > > > > So when I initiate the stub (when I call the > constructor), I don't like to > > > call it again throughout my application. > > > > > > Is it thread safe? > > > > > > > > > > > > Regards, > > > > > > Shehan > > > > > > > > > > > > > > > -- > > > Amila Suriarachchi > > > WSO2 Inc. > > > blog: http://amilachinthaka.blogspot.com/ > > > > > > > > > > > > > > > -- > > > Amila Suriarachchi > > > WSO2 Inc. > > > blog: http://amilachinthaka.blogspot.com/ > > -- > > David Ojeda > > > > __________ NOD32 3677 (20081209) Information __________ > > This message was checked by NOD32 antivirus system. > http://www.eset.com > > > > __________ NOD32 3680 (20081210) Information __________ > > This message was checked by NOD32 antivirus system. > http://www.eset.com > > > > __________ NOD32 3682 (20081210) Information __________ > > This message was checked by NOD32 antivirus system. > http://www.eset.com
