Please try editing DeliverPortMessageReceiverInOnly.java and call a
build() on the envelope just before the call to the getHeader()
[DeliverPortMessageReceiverInOnly.java:102?]
thanks,
dims
On 5/17/06, Amitesh Pandya <[EMAIL PROTECTED]> wrote:
Come on ! I can't believe no one has got this error???
I know you've got the answer. Please let me know....
Here is the problem Again.........
Hi,
I'm currently working on project and we are using Axis2 + Sandesha2
(Both Version 1.0) for the WS-RM.
One of my requirements is to return a SOAP Fault after the validation fails.
I've created the service using WSDL2Java. The service works fine.
But when I try to throw an exception (Axis Fault) from the generated
"Skeleton" I get another Axis exception.
I looked into it and it seems to be a problem with the AXIOM.
The real problem happens when I try to call
inMessage.getEnvelope().getHeader()
Actually this method is called in the "AxisEngine" which is causing
all the troubles.
Please let me know if this is the known problem or If I'm missing something.
Kindly suggest what is the best way of sending the Custom SOAP Fault.
Your response to this query is greatly appreciated.
Thanks in advance
Amitesh
Please find the attached Stacktrace:
##################################################
[16/05/06 11:22:49:505 BST] 00000035 SystemErr R
org.apache.axiom.om.OMException
at
org.apache.axiom.om.impl.llom.OMElementImpl.getNextOMSibling(OMElementImpl.java:265)
at
org.apache.axiom.om.impl.traverse.OMChildrenQNameIterator.hasNext(OMChildrenQNameIterator.java(Compiled
Code))
at
org.apache.axiom.om.impl.llom.OMElementImpl.getFirstChildWithName(OMElementImpl.java:222)
at
org.apache.axiom.soap.impl.llom.SOAPEnvelopeImpl.getHeader(SOAPEnvelopeImpl.java:76)
at
uk.gov.cjse.schemas.DeliverPortMessageReceiverInOnly.invokeBusinessLogic(DeliverPortMessageReceiverInOnly.java:102)
at
org.apache.axis2.receivers.AbstractInMessageReceiver.receive(AbstractInMessageReceiver.java:34)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:454)
at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:284)
at
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:136)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1212)
at
com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:629)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:2837)
at
com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:220)
at
com.ibm.ws.webcontainer.VirtualHost.handleRequest(VirtualHost.java:204)
at
com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:1681)
at
com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:77)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:421)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:367)
at
com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:276)
at
com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminaters(NewConnectionInitialReadCallback.java:201)
at
com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:103)
at
com.ibm.ws.tcp.channel.impl.WorkQueueManager.requestComplete(WorkQueueManager.java:548)
at
com.ibm.ws.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQueueManager.java:601)
at
com.ibm.ws.tcp.channel.impl.WorkQueueManager.workerRun(WorkQueueManager.java:934)
at
com.ibm.ws.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQueueManager.java:1021)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1332)
--
Davanum Srinivas : http://wso2.com/blogs/