java - The ResourceConfig instance does not contain any root resource classes. (Guice+Jersey+Jboss) -


i trying port rest-app jboss (guice 3.0 + jersey 1.19 on jboss 7), works charm on tomcat 7, stumbling on same resource-config-exception on jboss 7:

 exception starting filter guicefilter: com.sun.jersey.api.container.containerexception: resourceconfig instance not contain root resource classes.     @ com.sun.jersey.server.impl.application.rootresourceurirules.<init>(rootresourceurirules.java:99) [jersey-bundle-1.19.jar:1.19]     @ com.sun.jersey.server.impl.application.webapplicationimpl._initiate(webapplicationimpl.java:1359) [jersey-bundle-1.19.jar:1.19]     @ com.sun.jersey.server.impl.application.webapplicationimpl.access$700(webapplicationimpl.java:180) [jersey-bundle-1.19.jar:1.19]     @ com.sun.jersey.server.impl.application.webapplicationimpl$13.f(webapplicationimpl.java:799) [jersey-bundle-1.19.jar:1.19]     @ com.sun.jersey.server.impl.application.webapplicationimpl$13.f(webapplicationimpl.java:795) [jersey-bundle-1.19.jar:1.19]     @ com.sun.jersey.spi.inject.errors.processwitherrors(errors.java:193) [jersey-bundle-1.19.jar:1.19]     @ com.sun.jersey.server.impl.application.webapplicationimpl.initiate(webapplicationimpl.java:795) [jersey-bundle-1.19.jar:1.19]     @ com.sun.jersey.guice.spi.container.servlet.guicecontainer.initiate(guicecontainer.java:121) [jersey-guice-1.19.jar:1.19]     @ com.sun.jersey.spi.container.servlet.servletcontainer$internalwebcomponent.initiate(servletcontainer.java:339) [jersey-bundle-1.19.jar:1.19]     @ com.sun.jersey.spi.container.servlet.webcomponent.load(webcomponent.java:605) [jersey-bundle-1.19.jar:1.19]     @ com.sun.jersey.spi.container.servlet.webcomponent.init(webcomponent.java:207) [jersey-bundle-1.19.jar:1.19]     @ com.sun.jersey.spi.container.servlet.servletcontainer.init(servletcontainer.java:394) [jersey-bundle-1.19.jar:1.19]     @ com.sun.jersey.spi.container.servlet.servletcontainer.init(servletcontainer.java:577) [jersey-bundle-1.19.jar:1.19]     @ javax.servlet.genericservlet.init(genericservlet.java:242) [jboss-servlet-api_3.0_spec-1.0.0.final.jar:1.0.0.final]     @ com.google.inject.servlet.servletdefinition.init(servletdefinition.java:117) [guice-servlet-3.0.jar:]     @ com.google.inject.servlet.managedservletpipeline.init(managedservletpipeline.java:82) [guice-servlet-3.0.jar:]     @ com.google.inject.servlet.managedfilterpipeline.initpipeline(managedfilterpipeline.java:102) [guice-servlet-3.0.jar:]     @ com.google.inject.servlet.guicefilter.init(guicefilter.java:172) [guice-servlet-3.0.jar:]     @ org.apache.catalina.core.applicationfilterconfig.getfilter(applicationfilterconfig.java:447) [jbossweb-7.0.13.final.jar:]     @ org.apache.catalina.core.standardcontext.filterstart(standardcontext.java:3269) [jbossweb-7.0.13.final.jar:]     @ org.apache.catalina.core.standardcontext.start(standardcontext.java:3865) [jbossweb-7.0.13.final.jar:]     @ org.jboss.as.web.deployment.webdeploymentservice.start(webdeploymentservice.java:90) [jboss-as-web-7.1.1.final.jar:7.1.1.final]     @ org.jboss.msc.service.servicecontrollerimpl$starttask.startservice(servicecontrollerimpl.java:1811)     @ org.jboss.msc.service.servicecontrollerimpl$starttask.run(servicecontrollerimpl.java:1746)     @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1145) [rt.jar:1.7.0_72]     @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:615) [rt.jar:1.7.0_72]     @ java.lang.thread.run(thread.java:745) [rt.jar:1.7.0_72] 

my web.xml looks this:

<?xml version="1.0" encoding="utf-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/xmlschema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemalocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <display-name>mylitterestservice</display-name>  <listener>   <listener-class>com.restapp.guice.guicelistener</listener-class> </listener> <filter>     <filter-name>guicefilter</filter-name>     <filter-class>com.google.inject.servlet.guicefilter</filter-class> </filter> <filter-mapping>     <filter-name>guicefilter</filter-name>     <url-pattern>/api/*</url-pattern> </filter-mapping> 

an guicelistener:

public class guicelistener extends guiceservletcontextlistener {      @override     protected injector getinjector() {         return guice.createinjector(new servletmodule() {             @override             protected void configureservlets() {                  resourceconfig rc = new packagesresourceconfig(                         "com.restapp");                 (class<?> resource : rc.getclasses()) {                     bind(resource);                 }                 serve("/api/*").with(guicecontainer.class);              }         });     } } 

i tried solution described in the resourceconfig instance not contain root resource classes nothing seems work.

any ideas doing wrong here?


Comments

Popular posts from this blog

android - How to save instance state of selected radiobutton on menu -

python 3 IndexError: list index out of range -

IF statement in MySQL trigger -