[ 
http://jira.codehaus.org/browse/XFIRE-1001?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_96792
 ] 

Tatu Saloranta commented on XFIRE-1001:
---------------------------------------

For what it's worth, Woodstox factories are fully thread-safe in regards to 
reader/writer construction methods (as well as wrt. any other interaction 
between factory and readers/writers it creates). There is no need for 
synchronization; although at the same time, cost of synchronization is rather 
small relative to all xml processing. Constructing readers and writers is a 
cheap operation.
I think this is true for other Stax implementations as well, although to be 
sure you might want to contact Sun sjsxp folks, or check out source code.

The only non-thread-safe part of dealing with factories is configuration: 
changing settings via factory.setProperty() is not (guaranteed to be) 
thread-safe.


> Concurrency issue in StaxUtils.createXMLStreamReader
> ----------------------------------------------------
>
>                 Key: XFIRE-1001
>                 URL: http://jira.codehaus.org/browse/XFIRE-1001
>             Project: XFire
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.2.6
>         Environment: Windows XP, Java 5 update 9
>            Reporter: Walter Seymore
>            Assignee: Dan Diephouse
>         Attachments: HelloWorldClient.java, HelloWorldService.java
>
>
> I've created a simple HelloWorld service that echoes a name back to the 
> client. This works fine until i create 2 or more threads that calls the 
> service at the same time. Every now and then, I get an XML parsing error. The 
> content of the request is always correct however and making this small change 
> to StaxUtils fixes the issue.
> 759            synchronized(factory) {
> 760                 return factory.createXMLStreamReader(in, encoding);
> 761            }
> So this would indicate that it is not safe to use the same XMLInputFactory 
> instance in a multi-threaded way. Obviously synchronisation is not an optimal 
> solution, but hopefully you guys can think of something better :).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email

Reply via email to