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

Colm O hEigeartaigh closed WSS-12.
----------------------------------

    
> WSDoAllReceiver crashes due to missing method in SOAPHeaderElement
> ------------------------------------------------------------------
>
>                 Key: WSS-12
>                 URL: https://issues.apache.org/jira/browse/WSS-12
>             Project: WSS4J
>          Issue Type: Bug
>         Environment: Windows XP SP2, SUN JDK 1.5.0, Axis 1.2.1, WSS4J 1.0.0
>            Reporter: Guy Rixon
>            Assignee: Davanum Srinivas
>            Priority: Critical
>
> I am using WSDoAllReceiver to process message signature. It consistently 
> crashes when reading the message with this error:
> javax.xml.soap.SOAPHeaderElement.getLocalName()Ljava/lang/String;
> java.lang.NoSuchMethodError: 
> javax.xml.soap.SOAPHeaderElement.getLocalName()Ljava/lang/String;
>       at 
> org.apache.ws.axis.security.WSDoAllReceiver.invoke(WSDoAllReceiver.java:270)
>       at 
> org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:32)
>       at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
>       at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
>       at org.apache.axis.client.AxisClient.invoke(AxisClient.java:121)
>       at org.apache.axis.client.Call.invokeEngine(Call.java:2765)
>       at org.apache.axis.client.Call.invoke(Call.java:2748)
>       at org.apache.axis.client.Call.invoke(Call.java:2424)
>       at org.apache.axis.client.Call.invoke(Call.java:2347)
>       at org.apache.axis.client.Call.invoke(Call.java:1804)
>       at 
> org.astrogrid.security.sample.SamplePortSoapBindingStub.whoAmI(SamplePortSoapBindingStub.java:108)
>       at org.astrogrid.security.EndToEndTest.testAll(EndToEndTest.java:46)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> The method in question is specified by org.w3c.dom.Element; it looks like the 
> inheritence tree has gone wrong in Axis 1.2.1. The inheritence of interfaces 
> between javax.xml.soap.SOAPHeaderInterface, javax.xml.soap.SOAPElement and 
> org.w3c.dom.Node may be the problem; it looks to me like there may be a loop.
> This problem can be worked around in WSS4J by changing WSDoAllReceiver.  
> Around line 269, change this
>             SOAPHeaderElement headerElement = null;
>             while (headers.hasNext()) {
>                 SOAPHeaderElement hE = (SOAPHeaderElement)headers.next();
>                 if (hE.getLocalName().equals(WSConstants.WSSE_LN)
>                         && hE.getNamespaceURI().equals(WSConstants.WSSE_NS)) {
>                     headerElement = hE;
>                     break;
>                 }
>             }
>             ((org.apache.axis.message.SOAPHeaderElement) headerElement)
>                     .setProcessed(true);
> to this
>             SOAPHeaderElement headerElement = null;
>             while (headers.hasNext()) {
>                 org.apache.axis.message.SOAPHeaderElement hE = 
> (org.apache.axis.message.SOAPHeaderElement) headers.next();
>                 if (hE.getLocalName().equals(WSConstants.WSSE_LN)
>                         && hE.getNamespaceURI().equals(WSConstants.WSSE_NS)) {
>                     headerElement = hE;
>                     break;
>                 }
>             }
>             ((org.apache.axis.message.SOAPHeaderElement) headerElement)
>                     .setProcessed(true);

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to