[ 
https://issues.apache.org/jira/browse/AXIOM-362?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13018477#comment-13018477
 ] 

Andreas Veithen commented on AXIOM-362:
---------------------------------------

Found an interesting comment in LLOM's SOAPHeaderImpl#addChild method:

        // Make sure a proper element is added.  The children of a SOAPHeader 
should be
        // SOAPHeaderBlock objects.
        // Due to legacy usages (AXIS2 has a lot of tests that violate this 
constraint)
        // I am only going to log an exception when debug is enabled. 

Action plan:
* Fix the Axis2 test cases that add plain OMElement instances to SOAPHeader.
* Change the addChild implementation to throw an exception if the child is not 
a SOAPHeaderBlock.

> SOAPHeader examineAllHeaderBlocks throws ClassCastException
> -----------------------------------------------------------
>
>                 Key: AXIOM-362
>                 URL: https://issues.apache.org/jira/browse/AXIOM-362
>             Project: Axiom
>          Issue Type: Bug
>          Components: LLOM
>    Affects Versions: 1.2.11
>            Reporter: Auke Schrijnen
>            Priority: Minor
>         Attachments: axiom-soapheader.patch
>
>
> The llom SOAPHeaderImpl class throws a ClassCastException:
> java.lang.ClassCastException: org.apache.axiom.om.impl.llom.OMElementImpl 
> cannot be cast to org.apache.axiom.soap.SOAPHeaderBlock
>       at 
> org.apache.axiom.soap.impl.llom.SOAPHeaderImpl$HeaderIterator.<init>(SOAPHeaderImpl.java:181)
>       at 
> org.apache.axiom.soap.impl.llom.SOAPHeaderImpl.examineAllHeaderBlocks(SOAPHeaderImpl.java:358)
>       at 
> org.apache.synapse.core.axis2.Axis2MessageContext.toString(Axis2MessageContext.java:485)
>       at java.lang.String.valueOf(String.java:2826)
>       at java.lang.StringBuilder.append(StringBuilder.java:115)
>       at 
> org.apache.synapse.mediators.eip.aggregator.AggregateMediator.mediate(AggregateMediator.java:249)
>       at ...
> The HeaderIterator does check for nodes other than a SOAPHeaderBlock node, 
> except for the first element. The method 'hasNext' does check if nodes are 
> SOAPHeaderBlock nodes.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@ws.apache.org
For additional commands, e-mail: dev-h...@ws.apache.org

Reply via email to