Invalid SOAP header causes NullPointerException
-----------------------------------------------
Key: AXIS2-1292
URL: http://issues.apache.org/jira/browse/AXIS2-1292
Project: Apache Axis 2.0 (Axis2)
Issue Type: Bug
Components: om
Environment: axis2 nightlies 2nd October 2006.
Reporter: Brian DePradine
The following is a SOAP message with an invalid SOAP header, param1. It is
invalid because it is not namespace qualified.
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<wsa:To>http://localhost:8081/axis2/services/MyService</wsa:To>
<param1 wsa:IsReferenceParameter="true">value1</param1>
<wsa:ReplyTo>
<wsa:Address>http://www.w3.org/2005/08/addressing/anonymous</wsa:Address>
</wsa:ReplyTo>
<wsa:MessageID>urn:uuid:D2912E793C8FA2D64A11598787126251</wsa:MessageID>
<wsa:Action>urn:echo</wsa:Action>
</soapenv:Header>
<soapenv:Body>
...
</soapenv:Body>
</soapenv:Envelope>
Axis2 send the following response to the above message:
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:wsa="http://www.w3.org/2005/08/addressing"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<wsa:ReplyTo>
<wsa:Address>http://www.w3.org/2005/08/addressing/none</wsa:Address>
</wsa:ReplyTo>
<wsa:MessageID>urn:uuid:777D9188D9244B5DA911598787130312</wsa:MessageID>
<wsa:Action>http://www.w3.org/2005/08/addressing/soap/fault</wsa:Action>
</soapenv:Header>
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Client</faultcode>
<faultstring>unknown</faultstring>
<detail>
<Exception>java.lang.NullPointerException
at
org.apache.axiom.soap.impl.llom.SOAPHeaderImpl.getHeaderBlocksWithNSURI(SOAPHeaderImpl.java:217)
at
org.apache.axis2.handlers.addressing.AddressingInHandler.invoke(AddressingInHandler.java:87)
at org.apache.axis2.engine.Phase.invoke(Phase.java:377)
at org.apache.axis2.engine.AxisEngine.invoke(AxisEngine.java:513)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:484)
at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:324)
at
org.apache.axis2.transport.http.HTTPWorker.service(HTTPWorker.java:238)
at
org.apache.axis2.transport.http.server.DefaultHttpServiceProcessor.doService(DefaultHttpServiceProcessor.java:179)
at
org.apache.http.protocol.HttpService.handleRequest(HttpService.java:123)
at
org.apache.axis2.transport.http.server.DefaultHttpServiceProcessor.run(DefaultHttpServiceProcessor.java:251)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
at
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
at java.lang.Thread.run(Thread.java:595)
</Exception>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
We should probably do something more informative than throw a
NullPointerException, and we should probably fill in faultstring element as
well.
--
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]