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