You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Srinath Perera (JIRA)" <ji...@apache.org> on 2010/12/22 07:36:01 UTC

[jira] Resolved: (AXIS2-4179) Make PolicySubject of AxisDescription thread-safe

     [ https://issues.apache.org/jira/browse/AXIS2-4179?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Srinath Perera resolved AXIS2-4179.
-----------------------------------

    Resolution: Fixed

this has been applied, not sure how ;)

> Make PolicySubject of AxisDescription thread-safe 
> --------------------------------------------------
>
>                 Key: AXIS2-4179
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4179
>             Project: Axis2
>          Issue Type: Improvement
>            Reporter: Nandana Mihindukulasooriya
>            Assignee: Nandana Mihindukulasooriya
>         Attachments: AXIS2-4179.patch
>
>
> Each AxisDescription instance (AxisService, AxisOperation, etc.) has a "PolicySubject" field containing the policy components (policy, policy reference) attached at that subject. The problem is that this PolicySubject class is not thread safe - it maintains a HashMap with all policy components (mapped by their id). So when users are somehow modifying the policy of a subject (attaching new components or removing some) if meanwhile a service execution calls MessageContext.getEffectivePolicy(), which iterates over the policy components, a ConcurrentModificationException is thrown. In that case the service invocation will fail and a fault will be send to the client. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org