1 Reply Latest reply on May 10, 2006 5:14 PM by Anil Saldanha

    JBossWS Thinks its a servlet (but it's not)

    Brian Call Newbie

      I'm exposing an EJB3.0 object as a webservice and I'm seeing some fairly bizarre behaviour. The deployment proceeds properly and I receive the message in the console indicating that the wsdl for my service has been generated like this:

      [java] 14:13:49,662 INFO [EJBContainer] STARTED EJB: com.ghx.console.servr.tjvm.ws.AggregateTjvmDataServiceImpl ejbName: AggregateTjvmDataServiceImpl
      [java] 14:13:49,677 INFO [EJB3Deployer] Deployed: file:/C:/tools/jboss4.0.4.CR2/server/transmon/tmp/deploy/tmp39785transmon.ear-contents/transmon_ejb.jar
      [java] 14:13:49,693 INFO [WSDLFilePublisher] WSDL published to: file:/C:/tools/jboss4.0.4.CR2/server/transmon/data/wsdl/transmon.ear/transmon_ejb.jar/AgregateTjvmDataService39786.wsdl


      However, when I try to run the wsdl query (ie /AggregateTjvmDatatService?wsdl) I get this exception:

      javax.servlet.ServletException: Class com.ghx.console.server.tjvm.ws.AggregateTjvmDataServiceImpl is not a Servlet
      org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:54)
      org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:174)
      org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
      org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
      org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
      org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
      org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
      org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
      org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
      java.lang.Thread.run(Thread.java:595)


      Obviously, the webservice is NOT a servlet in the usual sense but then again, it's not supposed to be...

      I started seeing this behavior shortly after converting my POJO webservice into an EJB3 webservice. As a POJO object I could query for the wsdl with no problems. Now, I just get my service deactivated.... bummer.

      Is this a bug? Or just operator error?

      Thanks,
      Brian