Petals BC SOAP

Improve error message when invalid SOAP data is read

Details

  • Type: Improvement Request Improvement Request
  • Status: Resolved Resolved
  • Resolution: Duplicate
  • Affects Version/s: 4.0.5
  • Fix Version/s: None
  • Component/s: None
  • Security Level: Public
  • Description:
    Hide

    When HTML data is received by the BC soap instead of a well formatted XML SOAP, the following exception occurs:

    [Petals.Container.Components.petals-bc-soap]-WARNING 2010-09-27 12:39:53,363 Catch an exception on the WS invocation : First Element must contain the local
    name, Envelope , but found html
    org.apache.axis2.AxisFault: First Element must contain the local name, Envelope , but found html
            at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
            at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:90)
            at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:353)
            at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:416)
            at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228)
            at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
            at org.ow2.petals.binding.soap.listener.outgoing.PetalsServiceClient.sendReceiveBody(PetalsServiceClient.java:177)
            at org.ow2.petals.binding.soap.listener.outgoing.SOAPCaller.call(SOAPCaller.java:294)
            at org.ow2.petals.binding.soap.listener.outgoing.JBIListener.invokeCaller(JBIListener.java:132)
            at org.ow2.petals.binding.soap.listener.outgoing.JBIListener.onJBIMessage(JBIListener.java:156)
            at org.ow2.petals.component.framework.process.MessageExchangeProcessor.processInOutAsProvider(MessageExchangeProcessor.java:635)
            at org.ow2.petals.component.framework.process.MessageExchangeProcessor.processAsProvider(MessageExchangeProcessor.java:386)
            at org.ow2.petals.component.framework.process.MessageExchangeProcessor.process(MessageExchangeProcessor.java:233)
            at org.ow2.petals.component.framework.process.MessageExchangeProcessor.run(MessageExchangeProcessor.java:177)
            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
            at java.lang.Thread.run(Thread.java:619)
    Caused by: org.apache.axiom.soap.SOAPProcessingException: First Element must contain the local name, Envelope , but found html
            at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.constructNode(StAXSOAPModelBuilder.java:251)
            at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.createOMElement(StAXSOAPModelBuilder.java:209)
            at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.createNextOMElement(StAXSOAPModelBuilder.java:191)
            at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:172)
            at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.getSOAPEnvelope(StAXSOAPModelBuilder.java:156)
            at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.<init>(StAXSOAPModelBuilder.java:105)
            at org.apache.axis2.builder.BuilderUtil.getSOAPBuilder(BuilderUtil.java:677)
            at org.apache.axis2.transport.TransportUtils.createDocumentElement(TransportUtils.java:182)
            at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:112)
            at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:88)
            ... 15 more

    I'm wondering if it's possible to catch this at the component level and improve the error message?

    Show
    When HTML data is received by the BC soap instead of a well formatted XML SOAP, the following exception occurs:
    [Petals.Container.Components.petals-bc-soap]-WARNING 2010-09-27 12:39:53,363 Catch an exception on the WS invocation : First Element must contain the local
    name, Envelope , but found html
    org.apache.axis2.AxisFault: First Element must contain the local name, Envelope , but found html
            at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
            at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:90)
            at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:353)
            at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:416)
            at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:228)
            at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163)
            at org.ow2.petals.binding.soap.listener.outgoing.PetalsServiceClient.sendReceiveBody(PetalsServiceClient.java:177)
            at org.ow2.petals.binding.soap.listener.outgoing.SOAPCaller.call(SOAPCaller.java:294)
            at org.ow2.petals.binding.soap.listener.outgoing.JBIListener.invokeCaller(JBIListener.java:132)
            at org.ow2.petals.binding.soap.listener.outgoing.JBIListener.onJBIMessage(JBIListener.java:156)
            at org.ow2.petals.component.framework.process.MessageExchangeProcessor.processInOutAsProvider(MessageExchangeProcessor.java:635)
            at org.ow2.petals.component.framework.process.MessageExchangeProcessor.processAsProvider(MessageExchangeProcessor.java:386)
            at org.ow2.petals.component.framework.process.MessageExchangeProcessor.process(MessageExchangeProcessor.java:233)
            at org.ow2.petals.component.framework.process.MessageExchangeProcessor.run(MessageExchangeProcessor.java:177)
            at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
            at java.lang.Thread.run(Thread.java:619)
    Caused by: org.apache.axiom.soap.SOAPProcessingException: First Element must contain the local name, Envelope , but found html
            at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.constructNode(StAXSOAPModelBuilder.java:251)
            at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.createOMElement(StAXSOAPModelBuilder.java:209)
            at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.createNextOMElement(StAXSOAPModelBuilder.java:191)
            at org.apache.axiom.om.impl.builder.StAXOMBuilder.next(StAXOMBuilder.java:172)
            at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.getSOAPEnvelope(StAXSOAPModelBuilder.java:156)
            at org.apache.axiom.soap.impl.builder.StAXSOAPModelBuilder.<init>(StAXSOAPModelBuilder.java:105)
            at org.apache.axis2.builder.BuilderUtil.getSOAPBuilder(BuilderUtil.java:677)
            at org.apache.axis2.transport.TransportUtils.createDocumentElement(TransportUtils.java:182)
            at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:112)
            at org.apache.axis2.transport.TransportUtils.createSOAPMessage(TransportUtils.java:88)
            ... 15 more
    I'm wondering if it's possible to catch this at the component level and improve the error message?
  • Environment:
    JDK1.6
    Petals ESB 3.1.1

Issue Links

Activity

Christophe DENEUX made changes - Mon, 5 Oct 2015 - 15:04:04 +0200
Status New [ 10000 ] Resolved [ 10004 ]
Resolution Duplicate [ 3 ]
Transition Status Change Time Execution Times Last Executer Last Execution Date
New New Resolved Resolved
1553d 1h 8m
1
Christophe DENEUX
Mon, 5 Oct 2015 - 15:04:04 +0200



People

Dates

  • Created:
    Tue, 5 Jul 2011 - 13:55:26 +0200
    Updated:
    Mon, 5 Oct 2015 - 15:04:04 +0200
    Resolved:
    Mon, 5 Oct 2015 - 15:04:03 +0200