Problem with JBoss6, RESTEasy and weld
1919 Sep 28, 2011 6:49 AMI have a problem with a war application, using JBoss6 and RESTEasy. I'll use CDI later in the project.
I can't invoke REST resource, even without inject.
There are the logs :
@Deploy :
INFO ConfigurationBootstrap:82 - Adding scanned resource: com.restful.ws.RestClass DEBUG CdiInjectorFactory:68 - Doing a lookup for BeanManager in java:comp/BeanManager INFO CdiInjectorFactory:82 - Found BeanManager at java:comp/BeanManager DEBUG CdiInjectorFactory:68 - Using CdiConstructorInjector for class class com.restful.ws.RestClass
I am using :
JDK6
jboss-6.0.0.Final
resteasy-jaxrs-2.2.1.GA
lib :
http://img11.hostingpics.net/pics/414255lib.png
I use Hibernate for DAO.
web.xml :
<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <context-param> <param-name>resteasy.scan</param-name> <param-value>true</param-value> </context-param> <context-param> <param-name>resteasy.servlet.mapping.prefix</param-name> <param-value>/</param-value> </context-param> <listener> <listener-class>org.jboss.resteasy.plugins.server.servlet.ResteasyBootstrap</listener-class> </listener> <servlet> <servlet-name>resteasy-servlet</servlet-name> <servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class> </servlet> <servlet-mapping> <servlet-name>resteasy-servlet</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping> </web-app>
beans.xml :
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/beans_1_0.xsd"> </beans>
Application :
import java.util.HashSet; import java.util.Set; import javax.ws.rs.core.Application; public class MessageApplication extends Application { private Set<Object> singletons = new HashSet<Object>(); public MessageApplication() { singletons.add(new RestClass()); } @Override public Set<Object> getSingletons() { return singletons; } }
RestClass :
import javax.ws.rs.GET; import javax.ws.rs.Produces; import javax.ws.rs.Path; import javax.ws.rs.ext.Provider; @Path("/path") public class RestClass { @GET @Produces("text/plain") public String getMessage() { return "String" } }
Thanks