9 Replies Latest reply on Feb 14, 2005 12:24 PM by mette

    Exception when calling web service

    mette

      I am developing a document style web service in JBoss as a JSE, with custom serializers/deserializers. I have created all the appropriate mapping and configuration files, as far as I know (wsdl file, jaxrpc-mapping.xml, web.xml, webservices.xml, ws4ee-deployment.xml).

      The service deploys without any indicated problem:

      [exec] 16:35:15,453 INFO [TomcatDeployer] deploy, ctxPath=/sandbox, warUrl
      =file:/C:/jboss-4.0.0/server/bdc/tmp/deploy/tmp8394sandbox-exp.war/
      [exec] 16:35:16,084 DEBUG [Context] Starting tomcat.localhost./sandbox.Cont
      ext
      [exec] 16:35:16,084 DEBUG [Context] Configuring default Resources
      [exec] 16:35:16,124 DEBUG [Context] Processing standard container startup
      [exec] 16:35:16,144 DEBUG [Context] Setting deployment descriptor public ID
      to '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN'
      [exec] 16:35:16,154 DEBUG [Context] Setting deployment descriptor public ID
      to '-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN'
      [exec] 16:35:16,164 DEBUG [Context] Posting standard context attributes
      [exec] 16:35:16,164 DEBUG [Context] Configuring application event listeners

      [exec] 16:35:16,164 DEBUG [Context] Sending application start events
      [exec] 16:35:16,164 DEBUG [Context] Starting filters
      [exec] 16:35:16,164 DEBUG [Context] Starting completed
      [exec] 16:35:16,164 DEBUG [Context] Checking for jboss.web:J2EEApplication=
      none,J2EEServer=none,j2eeType=WebModule,name=//localhost/sandbox
      [exec] 16:35:16,234 DEBUG [WSDLReaderImpl] Retrieving document at 'file:/C:
      /jboss-4.0.0/server/bdc/tmp/deploy/tmp8394sandbox-exp.war/WEB-INF/wsdl/server-we
      b.wsdl'.
      [exec] 16:35:16,434 INFO [WSDLFilePublisher] WSDL published to: file:/C:/j
      boss-4.0.0/server/bdc/data/wsdl/sandbox.war/server-web.wsdl
      [exec] 16:35:16,775 INFO [AxisService] WSDD published to: C:\jboss-4.0.0\s
      erver\bdc\data\wsdl\sandbox.war\SensorRegistryServiceJSE.wsdd
      [exec] 16:35:17,365 INFO [AxisService] Web Service deployed: http://localh
      ost:8080/sandbox/SensorRegistryEndpoint


      However, when I try to call the service from SOAPScope, I get the following server side exception:

      [exec] 11:26:48,298 ERROR [ServerEngine] Server error
      [exec] java.lang.NullPointerException
      [exec] at org.apache.axis.description.OperationDesc.getParamByQName(Ope
      rationDesc.java:419)
      [exec] at org.apache.axis.MessageContext.getPossibleOperationsByQName(M
      essageContext.java:290)
      [exec] at org.apache.axis.message.BodyBuilder.onStartChild(BodyBuilder.
      java:186)
      [exec] at org.apache.axis.encoding.DeserializationContextImpl.startElem
      ent(DeserializationContextImpl.java:1188)
      [exec] at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unkn
      own Source)
      [exec] at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElem
      ent(Unknown Source)
      [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$Fragmen
      tContentDispatcher.dispatch(Unknown Source)
      [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDoc
      ument(Unknown Source)
      [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown So
      urce)
      [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown So
      urce)
      [exec] at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
      [exec] at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Sou
      rce)
      [exec] at javax.xml.parsers.SAXParser.parse(Unknown Source)
      [exec] at org.apache.axis.encoding.DeserializationContextImpl.parse(Des
      erializationContextImpl.java:257)
      [exec] at org.apache.axis.MessagePart.getAsSOAPEnvelope(MessagePart.jav
      a:655)
      [exec] at org.apache.axis.MessagePart.getEnvelope(MessagePart.java:1074
      )
      [exec] at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.
      java:62)
      [exec] at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet
      .java:971)
      [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      [exec] at org.apache.axis.transport.http.AxisServletBase.service(AxisSe
      rvletBase.java:372)
      [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFil
      ter(ApplicationFilterChain.java:237)
      [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(Appl
      icationFilterChain.java:157)
      [exec] at org.apache.catalina.core.StandardWrapperValve.invoke(Standard
      WrapperValve.java:214)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.StandardContextValve.invokeInternal(
      StandardContextValve.java:198)
      [exec] at org.apache.catalina.core.StandardContextValve.invoke(Standard
      ContextValve.java:152)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke
      (SecurityAssociationValve.java:157)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:102)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHos
      tValve.java:137)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepor
      tValve.java:118)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:102)
      [exec] at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(Cac
      hedConnectionValve.java:122)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:102)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.StandardEngineValve.invoke(StandardE
      ngineValve.java:109)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.j
      ava:929)
      [exec] at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter
      .java:160)
      [exec] at org.apache.coyote.http11.Http11Processor.process(Http11Proces
      sor.java:799)
      [exec] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandl
      er.processConnection(Http11Protocol.java:705)
      [exec] at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpo
      int.java:577)
      [exec] at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
      (ThreadPool.java:683)
      [exec] at java.lang.Thread.run(Thread.java:534)
      [exec] 11:26:50,170 INFO [AxisServlet] Exception:
      [exec] java.lang.NullPointerException
      [exec] at org.apache.axis.description.OperationDesc.getParamByQName(Ope
      rationDesc.java:419)
      [exec] at org.apache.axis.MessageContext.getPossibleOperationsByQName(M
      essageContext.java:290)
      [exec] at org.apache.axis.message.BodyBuilder.onStartChild(BodyBuilder.
      java:186)
      [exec] at org.apache.axis.encoding.DeserializationContextImpl.startElem
      ent(DeserializationContextImpl.java:1188)
      [exec] at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unkn
      own Source)
      [exec] at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElem
      ent(Unknown Source)
      [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$Fragmen
      tContentDispatcher.dispatch(Unknown Source)
      [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDoc
      ument(Unknown Source)
      [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown So
      urce)
      [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown So
      urce)
      [exec] at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
      [exec] at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Sou
      rce)
      [exec] at javax.xml.parsers.SAXParser.parse(Unknown Source)
      [exec] at org.apache.axis.encoding.DeserializationContextImpl.parse(Des
      erializationContextImpl.java:257)
      [exec] at org.apache.axis.MessagePart.getAsSOAPEnvelope(MessagePart.jav
      a:655)
      [exec] at org.apache.axis.MessagePart.getEnvelope(MessagePart.java:1074
      )
      [exec] at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.
      java:62)
      [exec] at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet
      .java:971)
      [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      [exec] at org.apache.axis.transport.http.AxisServletBase.service(AxisSe
      rvletBase.java:372)
      [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFil
      ter(ApplicationFilterChain.java:237)
      [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(Appl
      icationFilterChain.java:157)
      [exec] at org.apache.catalina.core.StandardWrapperValve.invoke(Standard
      WrapperValve.java:214)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.StandardContextValve.invokeInternal(
      StandardContextValve.java:198)
      [exec] at org.apache.catalina.core.StandardContextValve.invoke(Standard
      ContextValve.java:152)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke
      (SecurityAssociationValve.java:157)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:102)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHos
      tValve.java:137)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepor
      tValve.java:118)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:102)
      [exec] at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(Cac
      hedConnectionValve.java:122)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:102)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.StandardEngineValve.invoke(StandardE
      ngineValve.java:109)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.j
      ava:929)
      [exec] at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter
      .java:160)
      [exec] at org.apache.coyote.http11.Http11Processor.process(Http11Proces
      sor.java:799)
      [exec] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandl
      er.processConnection(Http11Protocol.java:705)
      [exec] at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpo
      int.java:577)
      [exec] at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
      (ThreadPool.java:683)
      [exec] at java.lang.Thread.run(Thread.java:534)
      [exec] 11:26:51,182 ERROR [Engine] StandardWrapperValve[SensorRegistryEndpo
      int]: Servlet.service() for servlet SensorRegistryEndpoint threw exception
      [exec] java.lang.NullPointerException
      [exec] at org.apache.axis.message.BodyBuilder.onStartChild(BodyBuilder.
      java:209)
      [exec] at org.apache.axis.encoding.DeserializationContextImpl.startElem
      ent(DeserializationContextImpl.java:1188)
      [exec] at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unkn
      own Source)
      [exec] at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElem
      ent(Unknown Source)
      [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$Fragmen
      tContentDispatcher.dispatch(Unknown Source)
      [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDoc
      ument(Unknown Source)
      [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown So
      urce)
      [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown So
      urce)
      [exec] at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
      [exec] at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Sou
      rce)
      [exec] at javax.xml.parsers.SAXParser.parse(Unknown Source)
      [exec] at org.apache.axis.encoding.DeserializationContextImpl.parse(Des
      erializationContextImpl.java:257)
      [exec] at org.apache.axis.MessagePart.getAsSOAPEnvelope(MessagePart.jav
      a:655)
      [exec] at org.apache.axis.Message.getSOAPEnvelope(Message.java:432)
      [exec] at org.apache.axis.Message.getContentType(Message.java:498)
      [exec] at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet
      .java:1027)
      [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
      [exec] at org.apache.axis.transport.http.AxisServletBase.service(AxisSe
      rvletBase.java:372)
      [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
      [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFil
      ter(ApplicationFilterChain.java:237)
      [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(Appl
      icationFilterChain.java:157)
      [exec] at org.apache.catalina.core.StandardWrapperValve.invoke(Standard
      WrapperValve.java:214)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.StandardContextValve.invokeInternal(
      StandardContextValve.java:198)
      [exec] at org.apache.catalina.core.StandardContextValve.invoke(Standard
      ContextValve.java:152)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke
      (SecurityAssociationValve.java:157)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:102)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHos
      tValve.java:137)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepor
      tValve.java:118)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:102)
      [exec] at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(Cac
      hedConnectionValve.java:122)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:102)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.StandardEngineValve.invoke(StandardE
      ngineValve.java:109)
      [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(Stan
      dardValveContext.java:104)
      [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipe
      line.java:520)
      [exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.j
      ava:929)
      [exec] at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter
      .java:160)
      [exec] at org.apache.coyote.http11.Http11Processor.process(Http11Proces
      sor.java:799)
      [exec] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandl
      er.processConnection(Http11Protocol.java:705)
      [exec] at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpo
      int.java:577)
      [exec] at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
      (ThreadPool.java:683)
      [exec] at java.lang.Thread.run(Thread.java:534)


      Note that the stack trace does not mention my code at all. My guess is that perhaps there is something wrong with one of the mapping/config files, but from the stack trace I have no idea where to start looking. Please help!

        • 1. Re: Exception when calling web service
          mette

          I tried updating to 4.0.1, n case this issue might have been fixed. i still get a null pointer exception, but this time I get several, so there may be more clues as to what is going wrong.

          Please help!

          [exec] java.lang.NullPointerException
          [exec] at org.apache.axis.description.OperationDesc.getParamByQName(OperationDesc.java:418)
          [exec] at org.apache.axis.MessageContext.getPossibleOperationsByQName(MessageContext.java:288)
          [exec] at org.apache.axis.message.BodyBuilder.onStartChild(BodyBuilder.java:184)
          [exec] at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:1166)
          [exec] at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
          [exec] at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
          [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
          [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
          [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
          [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
          [exec] at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
          [exec] at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
          [exec] at javax.xml.parsers.SAXParser.parse(Unknown Source)
          [exec] at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:258)
          [exec] at org.apache.axis.MessagePart.getAsSOAPEnvelope(MessagePart.java:657)
          [exec] at org.apache.axis.MessagePart.getEnvelope(MessagePart.java:1076)
          [exec] at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.java:62)
          [exec] at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:975)
          [exec] at org.jboss.webservice.server.ServiceEndpointServlet.doPost(ServiceEndpointServlet.java:84)
          [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
          [exec] at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370)
          [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
          [exec] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:75)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
          [exec] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
          [exec] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:66)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:54)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
          [exec] at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
          [exec] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
          [exec] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
          [exec] at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
          [exec] at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
          [exec] at java.lang.Thread.run(Thread.java:534)
          [exec] 17:28:32,507 INFO [AxisServlet] Exception:
          [exec] java.lang.NullPointerException
          [exec] at org.apache.axis.description.OperationDesc.getParamByQName(OperationDesc.java:418)
          [exec] at org.apache.axis.MessageContext.getPossibleOperationsByQName(MessageContext.java:288)
          [exec] at org.apache.axis.message.BodyBuilder.onStartChild(BodyBuilder.java:184)
          [exec] at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:1166)
          [exec] at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
          [exec] at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
          [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
          [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
          [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
          [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
          [exec] at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
          [exec] at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
          [exec] at javax.xml.parsers.SAXParser.parse(Unknown Source)
          [exec] at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:258)
          [exec] at org.apache.axis.MessagePart.getAsSOAPEnvelope(MessagePart.java:657)
          [exec] at org.apache.axis.MessagePart.getEnvelope(MessagePart.java:1076)
          [exec] at org.jboss.webservice.server.ServerEngine.invoke(ServerEngine.java:62)
          [exec] at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:975)
          [exec] at org.jboss.webservice.server.ServiceEndpointServlet.doPost(ServiceEndpointServlet.java:84)
          [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
          [exec] at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370)
          [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
          [exec] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:75)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
          [exec] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
          [exec] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:66)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:54)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
          [exec] at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
          [exec] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
          [exec] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
          [exec] at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
          [exec] at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
          [exec] at java.lang.Thread.run(Thread.java:534)
          [exec] 17:28:32,567 INFO [AxisServlet] java.lang.NullPointerException
          [exec] 17:28:32,727 ERROR [Engine] StandardWrapperValve[SensorRegistryEndpoint]: Servlet.service() for servlet SensorRegistryEndpoint threw exception
          [exec] java.lang.NullPointerException
          [exec] at org.apache.axis.encoding.DeserializationContextImpl.getTypeMapping(DeserializationContextImpl.java:604)
          [exec] at org.apache.axis.encoding.DeserializationContextImpl.getDeserializer(DeserializationContextImpl.java:564)
          [exec] at org.apache.axis.encoding.DeserializationContextImpl.getDeserializerForType(DeserializationContextImpl.java:596)
          [exec] at org.apache.axis.message.SOAPFaultBuilder.onStartChild(SOAPFaultBuilder.java:370)
          [exec] at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:1166)
          [exec] at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source)
          [exec] at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
          [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
          [exec] at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
          [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
          [exec] at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
          [exec] at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
          [exec] at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
          [exec] at javax.xml.parsers.SAXParser.parse(Unknown Source)
          [exec] at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:258)
          [exec] at org.apache.axis.MessagePart.getAsSOAPEnvelope(MessagePart.java:657)
          [exec] at org.apache.axis.Message.getSOAPEnvelope(Message.java:430)
          [exec] at org.apache.axis.Message.getContentType(Message.java:496)
          [exec] at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:1041)
          [exec] at org.jboss.webservice.server.ServiceEndpointServlet.doPost(ServiceEndpointServlet.java:84)
          [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
          [exec] at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:370)
          [exec] at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:237)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
          [exec] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:75)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:186)
          [exec] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
          [exec] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
          [exec] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:66)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:54)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
          [exec] at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
          [exec] at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
          [exec] at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
          [exec] at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:160)
          [exec] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
          [exec] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
          [exec] at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
          [exec] at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)
          [exec] at java.lang.Thread.run(Thread.java:534)


          • 2. Re: Exception when calling web service
            siano

            Hello,

            I also added debug logging for org.apache.axis. This gave me the following additional debug information:

            2005-02-01 09:11:44,918 INFO [org.jboss.webservice.AxisService] WSDD published to: /srv/www/jboss/default/data/wsdl/rciserver.war/Hello.wsdd
            2005-02-01 09:11:44,920 DEBUG [org.apache.axis.description.OperationDesc] @16c14c0setReturnType({http://test.com/}helloResponse)
            2005-02-01 09:11:44,921 DEBUG [org.apache.axis.description.OperationDesc] @16c14c0 added parameter >name: {http://test.com/}hello
            typeEntry: null
            mode: IN
            isReturn: false
            typeQName: {http://test.com/}hello
            javaType: null
            inHeader: false
            outHeader: false
            @c68059<total parameters:1
            2005-02-01 09:11:44,928 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://test.com/}helloResponse
            2005-02-01 09:11:44,929 DEBUG [org.jboss.webservice.deployment.MetaDataRegistry] Register type mapping meta data for: {http://test.com/}hello
            2005-02-01 09:11:44,931 INFO [org.jboss.webservice.AxisService] Web Service deployed: http://grobi:8080/rciserver/Hello
            2005-02-01 09:12:51,643 DEBUG [org.apache.axis.transport.http.AxisServlet] In AxisServletBase init
            2005-02-01 09:12:51,644 DEBUG [org.apache.axis.transport.http.AxisServlet] In servlet init
            2005-02-01 09:12:51,667 DEBUG [org.jboss.webservice.server.ServiceEndpointServlet] doGet: http://localhost:8080/ws4ee/services
            2005-02-01 09:12:51,692 DEBUG [org.jboss.webservice.server.ServiceEndpointServlet] Report available services
            2005-02-01 09:12:52,083 DEBUG [org.apache.axis.description.OperationDesc] @6743e2setReturnType({http://www.w3.org/2001/XMLSchema}string)
            2005-02-01 09:12:52,125 DEBUG [org.jboss.webservice.server.InvokerProvider] initServiceDesc: service=rciserver.war#Hello
            2005-02-01 09:12:52,170 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl] Create a handler chain for roles: []
            2005-02-01 09:12:52,171 DEBUG [org.jboss.webservice.handler.HandlerChainBaseImpl] init: [config=null]
            2005-02-01 09:12:52,176 DEBUG [org.apache.axis.description.ServiceDesc] Enter: syncOperationToClass org.apache.axis.description.OperationDesc
            name: hello
            returnQName: {http://test.com/}helloResponse
            returnType: {http://test.com/}helloResponse
            returnClass: null
            elementQName:{http://test.com/}hello
            soapAction: null
            style: document
            use: literal
            numInParams: 1
            method:null
             ParameterDesc[0]:
             name: {http://test.com/}hello
             typeEntry: null
             mode: IN
             isReturn: false
             typeQName: {http://test.com/}hello
             javaType: null
             inHeader: false
             outHeader: false
            
            
            2005-02-01 09:12:52,176 DEBUG [org.apache.axis.description.ServiceDesc] Sync method: public abstract java.lang.String com.mytest.Hello.hello(java.lang.String,java.lang.String) throws java.rmi.RemoteException
            2005-02-01 09:12:52,176 DEBUG [org.apache.axis.description.ServiceDesc] Number of parameters don't match
            2005-02-01 09:12:52,209 FATAL [org.apache.axis.InternalException] Exception:
            java.lang.Exception: The OperationDesc for hello was not synchronized to a method of com.mytest.Hello.
            


            followed by above backtrace. It says that my implemented method with two parameters does not match the required method with one message. Aren't the handlers supposed to handle this? Or is this a misunderstanding on my part and I have to implement a method using one parameter only (of the Hello_hello_RequestStruct class)?

            Thanks for your patience.

            Yours
            Stephan Siano

            • 3. Re: Exception when calling web service
              siano

              sorry, forget my previous post.

              this belongs to a completely different thread.

              • 4. Re: Exception when calling web service
                thomas.diesler

                Can you figure out why getQName() returns null?

                 public ParameterDesc getParamByQName(QName qname)
                 {
                 for (Iterator i = parameters.iterator(); i.hasNext();)
                 {
                 ParameterDesc param = (ParameterDesc)i.next();
                 if (param.getQName().equals(qname))
                 return param;
                 }
                
                 return null;
                 }
                


                The name property of the Axis ParameterDesc should never be null.


                • 5. Re: Exception when calling web service
                  mette

                  I am trying to figure that out, although it might take me a while as I don't have very much knowledge of the underlying code. I will get back to you if I get any more information.

                  However, I did find these warnings output on deployment , which I realize come from the parsing of the wsee-deployment.xml file:


                  [exec] 10:39:29,806 WARN [XMLUtils] Cannot obtain namespaceURI for prefix: retNS
                  [exec] 10:39:29,806 WARN [XMLUtils] Cannot obtain namespaceURI for prefix: rtns
                  [exec] 10:39:29,816 WARN [XMLUtils] Cannot obtain namespaceURI for prefix: pns
                  [exec] 10:39:29,816 WARN [XMLUtils] Cannot obtain namespaceURI for prefix: tns


                  All 4 of these are declared properly. Could this be a clue?

                  • 6. Re: Exception when calling web service
                    mette

                    I managed to figure out why these warnings appeared. this was generated XML in the wsdd (from WSDL2Java), and the prefix declaration appeared on the same element as the attribute whose value used the prefix, and it seems the processing code could not handle this! When I moved the namespace declaration to the wrapping element, the warnings went away. I would consider this to be a bug, but at least i was able to move on.

                    Anyway, this brings me to my next problem. I noticed that a lot of the Wiki pages on web services had been drastically changed, for example to use the wscompile tool instead of the axis tool WSDL2Java. With this change there seems to be one significant change, relevant to me at least. I want to process the whole document, but the examples showing the jaxrpc mapping talks about a message part, being one of the elements contained in the root element, and it wants to map this element to a type rather than an element class.

                    I want to use my own custom type classes, and use a class that pas to the element rather than the type, and ideally I would like to process the whole document, and not just the parts.

                    As it is, I am trying to reconcile the wiki pages:

                    http://www.jboss.org/wiki/Wiki.jsp?page=WSServerJSE
                    http://www.jboss.org/wiki/Wiki.jsp?page=WSTypeMapping

                    The first deals with mapping to a part of the message, and the second maps an element to a type. I am unable to see how one fits with the other. Hence I am in a bit of a bind, and I am getting an error message:

                    [exec] org.apache.axis.InternalException: java.lang.Exception: The OperationDesc for registerSensor was not synchronized to a method of com.mycompany.SensorRegistryEndpoint.

                    This I have gathered is a sign of a disconnect in types between the mapping files and the class.

                    So, my question is, is there a way to make the JAX-RPC mapping file map the whole document to a class, or alternately communicate in the wsdd that only a part of the incoming document will be used?

                    • 7. Re: Exception when calling web service
                      thomas.diesler

                       


                      I managed to figure out why these warnings appeared. this was generated XML in the wsdd (from WSDL2Java), and the prefix declaration appeared on the same element as the attribute whose value used the prefix, and it seems the processing code could not handle this! When I moved the namespace declaration to the wrapping element, the warnings went away. I would consider this to be a bug, but at least i was able to move on.


                      Please create a JIRA issue, that allows me to reproduce this.

                      • 8. Re: Exception when calling web service
                        thomas.diesler

                        Mapping the whole soap body content to a single java type is the exssence of document/literal

                        • 9. Re: Exception when calling web service
                          mette

                          I agre that it is. Yet the example on
                          http://www.jboss.org/wiki/Wiki.jsp?page=WSServerJSE
                          breaks the message into its parts, or in this case, part.

                          Hence my question, how do I work with the whole document, and how do I reconcile the JSE documentation, which shows the document disassembled into parts, with the documentation on custom datatypes, that shows the document as a whole.