[ http://issues.apache.org/jira/browse/WSS-12?page=all ]
     
Davanum Srinivas resolved WSS-12:
---------------------------------

    Resolution: Fixed

Applied patch.

thanks,
dims

> WSDoAllReceiver crashes due to missing method in SOAPHeaderElement
> ------------------------------------------------------------------
>
>          Key: WSS-12
>          URL: http://issues.apache.org/jira/browse/WSS-12
>      Project: WSS4J
>         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 contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.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