[JBoss JIRA] Created: (JBWS-2187) Handler Chain Management Prevents Service Re-Use
by Darran Lofthouse (JIRA)
Handler Chain Management Prevents Service Re-Use
------------------------------------------------
Key: JBWS-2187
URL: http://jira.jboss.com/jira/browse/JBWS-2187
Project: JBoss Web Services
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: jbossws-native
Affects Versions: jbossws-native-3.0.1
Reporter: Darran Lofthouse
Assigned To: Darran Lofthouse
Fix For: jbossws-native-3.0.3
There are a couple of issues relating to how the handler configuration is managed by the javax.xml.ws.Service.
1 - Handlers Added Multiple Times
Create new service.
Create port
setConfigName("Standard WSSecurity Client")
Call endpoint.
** All works fine and WS-Security headers are added to outbound message. **
Create port
setConfigName("Standard WSSecurity Client")
Call endpoint.
** Now the WS-Security headers are added to the outgoing message twice **
The creation of the port initialises the handler chain but it does not clear the old handlers, as the list of handlers is referenced by the Service each port creation adds a new set of handlers.
2 - Thread safety.
Due to the above behaviour is becomes apparent that even if each thread uses it's own Port there is still a common Service so setting the configuration on one Port will affect the other Port instances, in addition to this as the configuration uses a HandlerResolver also Collections local to the Service there is a possibility that these will be modified and accessed by different threads concurrently.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira