Minor correction: An object backed by a Xerces-based Document is not thread-safe unless you put the protections in place, such as synchronized method access, etc.
-----Original Message----- From: Vinh Nguyen (vinguye2) Sent: Tuesday, May 27, 2008 11:05 AM To: 'axis-user@ws.apache.org' Subject: RE: Axis2 1.4 not Thread safe (possible bug) Hi, One thing to point out is that the Xerces DOM parser/builder is not thread-safe. So any object that is backed by a Xerces-based Document is not thread-safe. I'm not sure though if this is common throughout Axis2, or just to a specific data binding option used. -Vinh -----Original Message----- From: Michele Mazzucco [mailto:[EMAIL PROTECTED] Sent: Saturday, May 24, 2008 6:06 AM To: axis-user@ws.apache.org Subject: RE: Axis2 1.4 not Thread safe (possible bug) Chuck, some components are thread safe, others are not (for example ServiceClient). Can you please post some relevant code? Thanks, Michele On Fri, 2008-05-23 at 16:23 -0400, Chuck Brinkman wrote: > Michele, > > In my opinion Axis2 is not thread safe. We are seeing responses of one type that have the body of another type. For example say we have serviceA that returns a serviceAresponse and serviceB that returns a serviceBresponse. We have captured the network packet and see things like serviceAresponse that has the data from a serviceBresponse. It appears to be related to a flash client we have. The flash client will open a connection and can send a second request using the original connection before it gets a response or a timeout from the first request. I'm still working on the issue but it is in some way good to know that I'm not the only one thinking Axis2 has a thread safety issue. > > Chuck > > > > > ---------------------------------------- > > From: [EMAIL PROTECTED] > > Subject: Re: Axis2 1.4 not Thread safe (possible bug) > > Date: Fri, 23 May 2008 17:56:54 +0100 > > To: axis-user@ws.apache.org > > > > I can only see a NullPointerException. > > > > Michele > > > > > > On 23 May 2008, at 14:31, sultanat wrote: > > > >> > >> Please see one of the errors we got during multiple threaded > >> processing: > >> The requests sent were valid SOAP xmls sent via AXIS client. > >> > >> org.apache.axis2.AxisFault > >> at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430) > >> at > >> com.atx.tokenserver.token.TokenServiceMessageReceiverInOut.fromOM > >> (TokenServiceMessageReceiverInOut.java:149) > >> at > >> com.atx.tokenserver.token.TokenServiceMessageReceiverInOut.invokeBu > >> sin > >> essLogic(TokenServiceMessageReceiverInOut.java:43) > >> at > >> org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusin > >> ess > >> Logic(AbstractInOutMessageReceiver.java:40) > >> at > >> org.apache.axis2.receivers.AbstractMessageReceiver.receive > >> (AbstractMessageReceiver.java:100) > >> at org.apache.axis2.engine.AxisEngine.receive > >> (AxisEngine.java:176) > >> at > >> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostR > >> equ > >> est(HTTPTransportUtils.java:275) > >> at > >> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java: > >> 131) > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java: > >> 709) > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java: > >> 802) > >> at > >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter > >> (ApplicationFilterChain.java:237) > >> at > >> org.apache.catalina.core.ApplicationFilterChain.doFilter > >> (ApplicationFilterChain.java:157) > >> at > >> org.apache.catalina.core.StandardWrapperValve.invoke > >> (StandardWrapperValve.java:214) > >> at > >> org.apache.catalina.core.StandardContextValve.invoke > >> (StandardContextValve.java:178) > >> at > >> org.apache.catalina.core.StandardHostValve.invoke > >> (StandardHostValve.java:126) > >> at > >> org.apache.catalina.valves.ErrorReportValve.invoke > >> (ErrorReportValve.java:105) > >> at > >> org.apache.catalina.core.StandardEngineValve.invoke > >> (StandardEngineValve.java:107) > >> at > >> org.apache.catalina.connector.CoyoteAdapter.service > >> (CoyoteAdapter.java:148) > >> at > >> org.apache.coyote.http11.Http11Processor.process > >> (Http11Processor.java:825) > >> at > >> org.apache.coyote.http11.Http11Protocol > >> $Http11ConnectionHandler.processConnection(Http11Protocol.java:731) > >> at > >> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket > >> (PoolTcpEndpoint.java:526) > >> at > >> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt > >> (LeaderFollowerWorkerThread.java:80) > >> at > >> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run > >> (ThreadPool.java:684) > >> at java.lang.Thread.run(Thread.java:595) > >> Caused by: java.lang.NullPointerException > >> at > >> org.apache.axis2.databinding.utils.ConverterUtil.convertToString > >> (ConverterUtil.java:337) > >> at > >> com.atx.tokenserver.token.xsd.DealerCode_type1.setDealerCode_type0 > >> (DealerCode_type1.java:59) > >> at > >> com.atx.tokenserver.token.xsd.DealerCode_type1$Factory.parse > >> (DealerCode_type1.java:417) > >> at > >> com.atx.tokenserver.token.xsd.NewTokenRequest$Factory.parse > >> (NewTokenRequest.java:525) > >> at > >> com.atx.tokenserver.token.TokenServiceMessageReceiverInOut.fromOM > >> (TokenServiceMessageReceiverInOut.java:136) > >> ... 22 more > >> > >> > >> Michele Mazzucco-2 wrote: > >>> > >>> Please post more information (stack trace, etc.) > >>> > >>> > >>> Michele > >>> > >>> > >>> On 22 May 2008, at 23:24, sultanat wrote: > >>> > >>>> > >>>> > >>>> People, > >>>> I created a web service using Axis2 1.4 and was accessing it with > >>>> multiple Threads. It appears that the SOAP xml during parsing was > >>>> getting corrupt and throwing all kinds of exceptons like invalid > >>>> XML, expecting some other element etc... > >>>> > >>>> I tried the same test with same web service using Axis2 1.3 but I > >>>> did not get any of the errors mentioned above. > >>>> Is there anything which I am missing or is this a bug in Axis2 1.4 ? > >>>> -- > >>>> View this message in context: > >>>> http://www.nabble.com/Axis2-1.4-not- > >>>> Thread-safe-%28possible-bug%29-tp17414803p17414803.html > >>>> Sent from the Axis - User mailing list archive at Nabble.com. > >>>> > >>>> > >>>> ----------------------------------------------------------------- > >>>> --- > >>>> - > >>>> To unsubscribe, e-mail: [EMAIL PROTECTED] > >>>> For additional commands, e-mail: [EMAIL PROTECTED] > >>>> > >>> > >>> > >>> ------------------------------------------------------------------ > >>> --- To unsubscribe, e-mail: [EMAIL PROTECTED] > >>> For additional commands, e-mail: [EMAIL PROTECTED] > >>> > >>> > >>> > >> > >> -- > >> View this message in context: http://www.nabble.com/Axis2-1.4-not- > >> Thread-safe-%28possible-bug%29-tp17414803p17425676.html > >> Sent from the Axis - User mailing list archive at Nabble.com. > >> > >> > >> ------------------------------------------------------------------- > >> -- To unsubscribe, e-mail: [EMAIL PROTECTED] > >> For additional commands, e-mail: [EMAIL PROTECTED] > >> > > > > > > -------------------------------------------------------------------- > > - To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > _________________________________________________________________ > Change the world with e-mail. Join the i'm Initiative from Microsoft. > http://im.live.com/Messenger/IM/Join/Default.aspx?source=EML_WL_Change > World > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]