Hi Eric,

In SOAP12 Faults the faultstring and faultcode is not present, So I guess you are getting a SOAP12 Fault to this particular code. Ideally you should check the SOAP version before evaluating this code and if it is SOAP11 you can use the following code while you have to use 'Code' and 'Reason' instead of the 'faultcode' and 'faultstring' in SOAP12.

This should have been existed in beta1 as well but you have not encountered a SOAP12 faults I guess.

Thanks,
Ruwan
// a first solution to log the fault
if (axis2MessageCtx.getEnvelope().getBody().getFault() != null) {
        SOAPFault fault =
axis2MessageCtx.getEnvelope().getBody().getFault();
        OMElement faultcode = (OMElement)
fault.getChildrenWithLocalName("faultcode").next();
        messagePropertyDTO.setFaultCode(faultcode.getText());
        OMElement faultmessage = (OMElement)
fault.getChildrenWithLocalName("faultstring").next();
        messagePropertyDTO.setFault(faultmessage.getText());
}

2008-06-06 14:22:43,008 [127.0.0.1-berjbolle-lx1] [HttpServerWorker-1]
INFO TimeoutHandler This engine will expire all callbacks after : 86400
seconds, irrespective of the timeout action, after the specified or
optional timeout

Exception in thread "HttpClientWorker-1"
org.apache.axiom.om.OMException: java.util.NoSuchElementException
        at
org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:2
49)
        at
org.apache.axiom.om.impl.llom.OMElementImpl.buildNext(OMElementImpl.java
:633)
        at
org.apache.axiom.om.impl.llom.OMElementImpl.getFirstOMChild(OMElementImp
l.java:650)
        at
org.apache.axiom.om.impl.llom.OMElementImpl.getChildren(OMElementImpl.ja
va:323)
        at
de.jamba.soa.esb.wso2.mediator.jtrace.JTraceMediator.setResponseProperti
es(JTraceMediator.java:110)
        at
de.jamba.soa.esb.wso2.mediator.jtrace.JTraceMediator.mediate(JTraceMedia
tor.java:51)
        at
org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMe
diator.java:58)
        at
org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMedia
tor.java:125)
        at
org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMedia
tor.java:174)
        at
org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMe
diator.java:58)
        at
org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMedia
tor.java:125)
        at
org.apache.synapse.core.axis2.Axis2SynapseEnvironment.injectMessage(Axis
2SynapseEnvironment.java:162)
        at
org.apache.synapse.core.axis2.SynapseCallbackReceiver.handleMessage(Syna
pseCallbackReceiver.java:301)
        at
org.apache.synapse.core.axis2.SynapseCallbackReceiver.receive(SynapseCal
lbackReceiver.java:131)
        at
org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
        at
org.apache.synapse.transport.nhttp.ClientWorker.run(ClientWorker.java:20
0)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecuto
r.java:885)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.ja
va:907)
        at java.lang.Thread.run(Thread.java:619)

Caused by: java.util.NoSuchElementException
        at
com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1083)
        at
org.apache.axiom.om.impl.builder.StAXOMBuilder.parserNext(StAXOMBuilder.
java:506)
        at
org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:1
61)


Thanks,
   Eric

_______________________________________________
Esb-java-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev



_______________________________________________
Esb-java-dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/esb-java-dev

Reply via email to