1 Reply Latest reply on Sep 8, 2008 11:55 AM by jahhaj

    invoking web service throws obscure exception

    jahhaj

      I'm using jboss 4.2.2.GA. I have a web service which is wrapped as a stateless session bean

      @Stateless
      @WebService
      public class Test
      {
       private static final Logger log = Logger.getLogger(Test.class.getName());
      
       public Test()
       {
       log.info("Test ctor");
       }
      
       @PostConstruct
       public void init()
       {
       log.info("Test init");
       }
      
       @WebMethod
       public String doubleUp(String str)
       {
       log.info("Test doubleUp");
       return str + str;
       }
      
      }
      


      Invoking the web method on this service produces the following error in the server log

      2008-09-08 05:06:07,652 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/server-test].[Test]] Servlet.service() for servlet Test threw exception
      java.lang.NoSuchMethodError: org.jboss.ejb3.stateless.StatelessBeanContext.getWebServiceContextProperty()Lorg/jboss/injection/lang/reflect/BeanProperty;
      at org.jboss.wsf.container.jboss42.InvocationHandlerEJB3$CallbackImpl.attached(InvocationHandlerEJB3.java:129)
      at org.jboss.ejb3.EJBContainerInvocation.setBeanContext(EJBContainerInvocation.java:77)
      at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:56)
      at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
      at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
      at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:110)
      at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
      at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
      at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
      at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
      at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
      at org.jboss.wsf.container.jboss42.InvocationHandlerEJB3.invoke(InvocationHandlerEJB3.java:103)
      at org.jboss.ws.core.server.ServiceEndpointInvoker.invoke(ServiceEndpointInvoker.java:220)
      at org.jboss.wsf.stack.jbws.RequestHandlerImpl.processRequest(RequestHandlerImpl.java:408)
      at org.jboss.wsf.stack.jbws.RequestHandlerImpl.handleRequest(RequestHandlerImpl.java:272)
      at org.jboss.wsf.stack.jbws.RequestHandlerImpl.doPost(RequestHandlerImpl.java:189)

      I see the 'Test ctor' and 'Test init' messages in the log but not the 'Test doubleUp' message so presumably the error is happening when jboss is trying to call the web method itself.

      I really have no clue what this means or how to fix it. Can anyone help?

      Thanks,
      John