Cannot find endpoint meta data with super-simple WS
jimpo991 May 2, 2008 9:50 AMI am trying to deploy a very very simple helloworld WS using
JBossAS 4.2.1-GA
JBossWS jbossws-3.0.1-native-2.0.4.GA
both out-of-the-box installations. I have installed JbossWS and run the tests, it should be ok.
I basically have class com.foo.Banana:
package com.foo; import javax.jws.WebMethod; import javax.jws.WebService; @WebService public class Banana { @WebMethod public int foo(int bar) { return 7; } }
and web.xml:
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>Banana</servlet-name> <servlet-class>com.foo.Banana</servlet-class> </servlet> <servlet-mapping> <servlet-name>Banana</servlet-name> <url-pattern>/banaaninpoimija</url-pattern> </servlet-mapping> </web-app>
Nothing else. AFAIK I should be able to just package this in standard WAR and deploy to JBoss. No need for any wscompile / etc tools, right? When I deploy I get the error:
16:45:38,734 ERROR [[HtmlAdaptor]] Servlet.service() for servlet HtmlAdaptor threw exception java.lang.IllegalStateException: Cannot find endpoint meta data for: Banana at org.jboss.wsf.stack.jbws.UnifiedMetaDataDeploymentAspect.getEndpointMetaData(UnifiedMetaDataDeploymentAspect.java:117) at org.jboss.wsf.stack.jbws.UnifiedMetaDataDeploymentAspect.create(UnifiedMetaDataDeploymentAspect.java:86) at org.jboss.wsf.framework.deployment.DeploymentAspectManagerImpl.deploy(DeploymentAspectManagerImpl.java:118) at org.jboss.wsf.container.jboss42.ArchiveDeployerHook.deploy(ArchiveDeployerHook.java:97) at org.jboss.wsf.container.jboss42.DeployerInterceptor.start(DeployerInterceptor.java:90) at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188) at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264) at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659) at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210) at $Proxy45.start(Unknown Source) at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782) at sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:585) at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155) at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94) at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133) at org.jboss.mx.server.Invocation.invoke(Invocation.java:88) at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
I see other people have reported this as well:
http://www.jboss.com/index.html?module=bb&op=viewtopic&t=132729
There was no solution there though, he just gave up on the approach and implemented an EJB endpoint instead.