Petals BC SOAP

NPE when we can't found the consumes target endpoint

Details

  • Type: Improvement Request Improvement Request
  • Status: Resolved Resolved
  • Priority: Minor Minor
  • Resolution: Fixed
  • Affects Version/s: 4.0.3
  • Fix Version/s: 4.0.4
  • Component/s: None
  • Security Level: Public
  • Description:
    Hide

    This track is more to do a signalisation than to hope a fix. To help the others developers by updating the documentation...or the future bc-soap version .
    If you invoke the web service deployed through a soap consumes with a bad JBI endpoint compared with the "real deployed" JBI endpoint (I tested with just a bad endpointname and a good service Qname and interface QName, we expect an error of Router kind (for example "unable to find the JBI endpoint"). But we've got an NPE with..."unable to find a document". The stacktrace using the bc-soap Jetty web page:

    Container.Components.petals-bc-soap.jetty]-WARNING 2010-10-12 15:08:34,352 /petals/services/CustomerInfo: org.apache.axis2.AxisFault: Server
     streaming serialization:
    org.apache.axis2.AxisFault: Server
            at org.ow2.petals.binding.soap.listener.incoming.PetalsAxisService.printWSDL(PetalsAxisService.java:160)
            at org.ow2.petals.binding.soap.listener.incoming.servlet.SoapServlet.printImportedDocuments(SoapServlet.java:174)
            at org.ow2.petals.binding.soap.listener.incoming.servlet.SoapServlet.doGet(SoapServlet.java:104)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
            at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
            at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
            at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
            at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
            at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
            at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
            at org.mortbay.jetty.Server.handle(Server.java:324)
            at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
            at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828)
            at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
            at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
            at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
            at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
            at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
    Caused by: java.lang.NullPointerException
            at com.ebmwebsourcing.easycommons.xml.XMLPrettyPrinter.getEncoding(XMLPrettyPrinter.java:167)
            at org.ow2.petals.binding.soap.listener.incoming.PetalsAxisService.printWSDL(PetalsAxisService.java:158)
            ... 18 more

    And the Fault received when using the service:

    org.apache.axis2.AxisFault: Server
    	at org.ow2.petals.binding.soap.listener.incoming.PetalsAxisService.getDescription(PetalsAxisService.java:353)
    	at org.ow2.petals.binding.soap.listener.incoming.SOAPProcessor.retrieveSOAPBindingOperation(SOAPProcessor.java:214)
    	at org.ow2.petals.binding.soap.listener.incoming.SOAPProcessor.process(SOAPProcessor.java:107)
    	at org.ow2.petals.binding.soap.listener.incoming.PetalsReceiver.process(PetalsReceiver.java:173)
    	at org.ow2.petals.binding.soap.listener.incoming.PetalsReceiver.invokeBusinessLogic(PetalsReceiver.java:123)
    	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
    	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
    	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
    	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133)
    	at org.ow2.petals.binding.soap.listener.incoming.servlet.SoapServlet.doPost(SoapServlet.java:122)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
    	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
    	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
    	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
    	at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.Server.handle(Server.java:324)
    	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
    	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842)
    	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
    	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
    	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
    	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
    	at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
    Caused by: org.ow2.easywsdl.extensions.wsdl4complexwsdl.api.WSDL4ComplexWsdlException: SchemaException: Document cannot be null!!!
    	at org.ow2.easywsdl.extensions.wsdl4complexwsdl.impl.inout.WSDL4ComplexWsdlReaderImpl.read(WSDL4ComplexWsdlReaderImpl.java:204)
    	at org.ow2.petals.binding.soap.listener.incoming.PetalsAxisService.getDescription(PetalsAxisService.java:351)
    	... 25 more
    Show
    This track is more to do a signalisation than to hope a fix. To help the others developers by updating the documentation...or the future bc-soap version . If you invoke the web service deployed through a soap consumes with a bad JBI endpoint compared with the "real deployed" JBI endpoint (I tested with just a bad endpointname and a good service Qname and interface QName, we expect an error of Router kind (for example "unable to find the JBI endpoint"). But we've got an NPE with..."unable to find a document". The stacktrace using the bc-soap Jetty web page:
    Container.Components.petals-bc-soap.jetty]-WARNING 2010-10-12 15:08:34,352 /petals/services/CustomerInfo: org.apache.axis2.AxisFault: Server
     streaming serialization:
    org.apache.axis2.AxisFault: Server
            at org.ow2.petals.binding.soap.listener.incoming.PetalsAxisService.printWSDL(PetalsAxisService.java:160)
            at org.ow2.petals.binding.soap.listener.incoming.servlet.SoapServlet.printImportedDocuments(SoapServlet.java:174)
            at org.ow2.petals.binding.soap.listener.incoming.servlet.SoapServlet.doGet(SoapServlet.java:104)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
            at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
            at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
            at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
            at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
            at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
            at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
            at org.mortbay.jetty.Server.handle(Server.java:324)
            at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
            at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828)
            at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
            at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
            at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
            at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
            at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
    Caused by: java.lang.NullPointerException
            at com.ebmwebsourcing.easycommons.xml.XMLPrettyPrinter.getEncoding(XMLPrettyPrinter.java:167)
            at org.ow2.petals.binding.soap.listener.incoming.PetalsAxisService.printWSDL(PetalsAxisService.java:158)
            ... 18 more
    And the Fault received when using the service:
    org.apache.axis2.AxisFault: Server
    	at org.ow2.petals.binding.soap.listener.incoming.PetalsAxisService.getDescription(PetalsAxisService.java:353)
    	at org.ow2.petals.binding.soap.listener.incoming.SOAPProcessor.retrieveSOAPBindingOperation(SOAPProcessor.java:214)
    	at org.ow2.petals.binding.soap.listener.incoming.SOAPProcessor.process(SOAPProcessor.java:107)
    	at org.ow2.petals.binding.soap.listener.incoming.PetalsReceiver.process(PetalsReceiver.java:173)
    	at org.ow2.petals.binding.soap.listener.incoming.PetalsReceiver.invokeBusinessLogic(PetalsReceiver.java:123)
    	at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:100)
    	at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:176)
    	at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:275)
    	at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:133)
    	at org.ow2.petals.binding.soap.listener.incoming.servlet.SoapServlet.doPost(SoapServlet.java:122)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
    	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
    	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
    	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
    	at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.Server.handle(Server.java:324)
    	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
    	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842)
    	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
    	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
    	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
    	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
    	at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
    Caused by: org.ow2.easywsdl.extensions.wsdl4complexwsdl.api.WSDL4ComplexWsdlException: SchemaException: Document cannot be null!!!
    	at org.ow2.easywsdl.extensions.wsdl4complexwsdl.impl.inout.WSDL4ComplexWsdlReaderImpl.read(WSDL4ComplexWsdlReaderImpl.java:204)
    	at org.ow2.petals.binding.soap.listener.incoming.PetalsAxisService.getDescription(PetalsAxisService.java:351)
    	... 25 more
  • Environment:
    platform 3.1.1, jdk 5.1, RHEL 5

Activity

People

Dates

  • Created:
    Wed, 13 Oct 2010 - 09:52:12 +0200
    Updated:
    Thu, 21 Oct 2010 - 10:00:13 +0200
    Resolved:
    Thu, 21 Oct 2010 - 10:00:13 +0200