[jboss-osgi-users] failed to start resteasy in OSGi

Thomas Diesler thomas.diesler at jboss.com
Mon Jun 25 09:24:01 EDT 2012


This is not yet supported please monitor and vote on
https://issues.jboss.org/browse/AS7-5066

On 06/21/2012 11:01 AM, ZHANG Rocky F wrote:
>
> Hi all,
>
> I am developing a rest bundle who is responding to bring up a RESTEASY 
> servlet and then provide interfaces for other bundles to register 
> their own handlers into RESTEASY.
>
> *Codes registering RESTEASY servlet into OSGI:*
>
> *ResteasyServlet  servlet = new ResteasyServlet();*
>
> HttpService http = (HttpService) context.getService(restServiceReference);
>
>                    if (null != http) {
>
> Dictionary props = new Properties();
>
> props.put("javax.ws.rs.Application", RestApplication.class.getName());
>
> // props.put("resteasy.use.builtin.providers", "true");
>
> props.put("resteasy.providers", ""
>
> +"org.jboss.resteasy.plugins.providers.jaxb.JAXBElementProvider"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.CollectionProvider"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.JAXBXmlRootElementProvider"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.JAXBXmlSeeAlsoProvider"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.JAXBXmlTypeProvider"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBContextFinder"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.AnnotationFactory"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.BaseMarshaller"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.ExternalEntityUnmarshaller"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.IgnoredMediaTypes"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.JaxbCollection"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.JAXBContextFinder"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.JAXBContextWrapper"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.JaxbMap"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.JAXBMarshalException"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.JAXBUnmarshalException"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.PrettyProcessor"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.StylesheetProcessor"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.XmlHeaderProcessor"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.XmlJAXBContextFinder"
>
> // + ",org.jboss.resteasy.plugins.providers.jaxb.XmlNamespacePrefixMapper"
>
> + 
> ",org.jboss.resteasy.plugins.providers.jaxb.AbstractJAXBContextFinder$CacheKey"
>
> + ",org.jboss.resteasy.plugins.providers.jaxb.JaxbMap$Entry"
>
> + ",org.jboss.resteasy.plugins.providers.DataSourceProvider" + 
> ",org.jboss.resteasy.plugins.providers.DocumentProvider"
>
> + ",org.jboss.resteasy.plugins.providers.DefaultTextPlain" + 
> ",org.jboss.resteasy.plugins.providers.StringTextStar"
>
> + ",org.jboss.resteasy.plugins.providers.InputStreamProvider" + 
> ",org.jboss.resteasy.plugins.providers.ByteArrayProvider"
>
> + ",org.jboss.resteasy.plugins.providers.FormUrlEncodedProvider" + 
> ",org.jboss.resteasy.plugins.providers.FileProvider"
>
> + ",org.jboss.resteasy.plugins.providers.StreamingOutputProvider"
>
> + ",org.jboss.resteasy.plugins.providers.IIOImageProvider"
>
> + ",org.jboss.resteasy.plugins.interceptors.CacheControlInterceptor"
>
> + 
> ",org.jboss.resteasy.plugins.interceptors.encoding.AcceptEncodingGZIPInterceptor"
>
> + 
> ",org.jboss.resteasy.plugins.interceptors.encoding.ClientContentEncodingHeaderInterceptor"
>
> + 
> ",org.jboss.resteasy.plugins.interceptors.encoding.GZIPDecodingInterceptor"
>
> + 
> ",org.jboss.resteasy.plugins.interceptors.encoding.GZIPEncodingInterceptor"
>
> + 
> ",org.jboss.resteasy.plugins.interceptors.encoding.ServerContentEncodingHeaderInterceptor");
>
> *http.registerServlet("/*", servlet, props, null);*
>
> *ResteasyServlet class (simply wrapping HttpServletDispatcher)*
>
> import org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher;
>
> /**
>
>  * ResteasyServlet simple wrapper to Resteasy's HttpServletDispatcher.
>
>  * @author <a href="mailto:baldin at gmail.com">Davi Baldin H. Tavares</a>
>
>  *
>
>  */
>
> public class ResteasyServlet extends HttpServletDispatcher {
>
>         private static final long serialVersionUID = 5968966644419029725L;
>
> }
>
> *HttpService in OSGI**:*pax-web-jetty-bundle is providing HttpService 
> in OSGI**
>
> *RESTEASY bundle used:*
>
> I am using RESTEASY bundle built-in in JBOSS7.1.0.final.
>
> Here is what I am configuring in JBOSS standalone.xml:
>
>         <subsystem xmlns="urn:jboss:domain:osgi:1.2" activation="eager">
>
> <properties>
>
> <property name="org.osgi.framework.startlevel.beginning">
>
>                     5
>
> </property>
>
> </properties>
>
> <capabilities>
>
> <capability name="javax.servlet.api:v25" startlevel="1"/>
>
> <capability name="javax.transaction.api" startlevel="1"/>
>
> <capability name="org.jboss.osgi.logging" startlevel="1"/>
>
> <capability name="org.apache.felix.scr" startlevel="1"/>
>
> <capability name="org.ops4j.pax.web.pax-web-jsp" startlevel="1"/>
>
> <capability name="org.ops4j.pax.web.pax-web-jetty-bundle" startlevel="1"/>
>
> *<capability name="javax.ws.rs.api" startlevel="1"/>*
>
> *<capability name="javax.xml.bind.api" startlevel="1"/>*
>
> <capability name="org.apache.commons.lang" startlevel="1"/>
>
> *            <capability name="com.sun.xml.bind" startlevel="1"/>*
>
>  <capability name="javax.jmdns" startlevel="1"/>
>
> <capability name="org.apache.log4j" startlevel="1"/>
>
> <capability name="org.apache.felix.log" startlevel="2"/>
>
> <capability name="org.apache.felix.configadmin" startlevel="2"/>
>
> <capability name="org.apache.felix.webconsole" startlevel="2"/>
>
> <capability name="org.ops4j.pax.pax-confmanager" startlevel="3"/>
>
> *<capability name="org.jboss.resteasy.resteasy-jaxb-provider" 
> startlevel="3"/>*
>
> *<capability name="org.jboss.resteasy.resteasy-jaxrs" startlevel="3"/>*
>
> </capabilities>
>
>         </subsystem>
>
> *Errors:*
>
> When I am running the rest bundle, I got the following error:
>
> 04:05:10,720 DEBUG 
> [org.ops4j.pax.web.service.jetty.internal.HttpServiceContext] (MSC 
> service thread 1-3) Started servlet context for http context 
> [DefaultHttpContext{bundle=com.alu.as3.rest:1.0.0}]
>
> 04:05:10,720 DEBUG 
> [org.jboss.osgi.framework.internal.ServiceManagerPlugin] (MSC service 
> thread 1-3) Register service: ServiceState{service.id=53, 
> objectClass=[javax.servlet.ServletContext], 
> osgi.web.symbolicname=com.alu.as3.rest, osgi.web.version=1.0}
>
> 04:05:10,736 DEBUG 
> [org.ops4j.pax.web.service.internal.HttpServiceStarted] (MSC service 
> thread 1-3) init called on 
> com.alu.as3.rest.internal.ResteasyServlet at 1037619
>
> 04:05:10,751 ERROR [stderr] (MSC service thread 1-3) 2012-06-21 
> 04:05:10.751:WARN:/:unavailable
>
> 04:05:10,751 ERROR [stderr] (MSC service thread 1-3) 
> *java.lang.IllegalArgumentException: object is not an instance of 
> declaring class*
>
> 04:05:10,767 ERROR [stderr] (MSC service thread 1-3)    at 
> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>
> 04:05:10,767 ERROR [stderr] (MSC service thread 1-3)    at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>
> 04:05:10,782 ERROR [stderr] (MSC service thread 1-3)    at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>
> 04:05:10,782 ERROR [stderr] (MSC service thread 1-3)    at 
> java.lang.reflect.Method.invoke(Method.java:597)
>
> 04:05:10,798 ERROR [stderr] (MSC service thread 1-3)    at 
> org.ops4j.pax.web.service.internal.HttpServiceStarted$2.invoke(HttpServiceStarted.java:209)
>
> 04:05:10,814 ERROR [stderr] (MSC service thread 1-3)    at 
> org.ops4j.pax.web.service.internal.$Proxy9.init(Unknown Source)
>
> 04:05:10,814 ERROR [stderr] (MSC service thread 1-3)    at 
> org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:445)
>
> 04:05:10,829 ERROR [stderr] (MSC service thread 1-3)    at 
> org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:265)
>
> 04:05:10,829 ERROR [stderr] (MSC service thread 1-3)    at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
>
> 04:05:10,845 ERROR [stderr] (MSC service thread 1-3)    at 
> org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:771)
>
> 04:05:10,860 ERROR [stderr] (MSC service thread 1-3)    at 
> org.eclipse.jetty.servlet.ServletHandler.updateMappings(ServletHandler.java:1221)
>
> 04:05:10,860 ERROR [stderr] (MSC service thread 1-3)    at 
> org.eclipse.jetty.servlet.ServletHandler.setServletMappings(ServletHandler.java:1280)
>
> 04:05:10,876 ERROR [stderr] (MSC service thread 1-3)    at 
> org.eclipse.jetty.servlet.ServletHandler.addServletMapping(ServletHandler.java:879)
>
> 04:05:10,876 ERROR [stderr] (MSC service thread 1-3)    at 
> org.ops4j.pax.web.service.jetty.internal.JettyServerImpl$1.call(JettyServerImpl.java:170)
>
> 04:05:10,891 ERROR [stderr] (MSC service thread 1-3)    at 
> org.ops4j.pax.web.service.jetty.internal.JettyServerImpl$1.call(JettyServerImpl.java:166)
>
> 04:05:10,907 ERROR [stderr] (MSC service thread 1-3)    at 
> org.ops4j.pax.swissbox.core.ContextClassLoaderUtils.doWithClassLoader(ContextClassLoaderUtils.java:60)
>
> 04:05:10,907 ERROR [stderr] (MSC service thread 1-3)    at 
> org.ops4j.pax.web.service.jetty.internal.JettyServerImpl.addServlet(JettyServerImpl.java:165)
>
> 04:05:10,923 ERROR [stderr] (MSC service thread 1-3)    at 
> org.ops4j.pax.web.service.jetty.internal.ServerControllerImpl$Started.addServlet(ServerControllerImpl.java:266)
>
> 04:05:10,938 ERROR [stderr] (MSC service thread 1-3)    at 
> org.ops4j.pax.web.service.jetty.internal.ServerControllerImpl.addServlet(ServerControllerImpl.java:107)
>
> 04:05:10,954 ERROR [stderr] (MSC service thread 1-3)    at 
> org.ops4j.pax.web.service.internal.HttpServiceStarted.registerServlet(HttpServiceStarted.java:165)
>
> 04:05:10,954 ERROR [stderr] (MSC service thread 1-3)    at 
> org.ops4j.pax.web.service.internal.HttpServiceProxy.registerServlet(HttpServiceProxy.java:56)
>
> 04:05:10,969 ERROR [stderr] (MSC service thread 1-3)    at 
> com.alu.as3.rest.internal.RestBundleActivator.registerServlet(RestBundleActivator.java:140)
>
> 04:05:10,985 ERROR [stderr] (MSC service thread 1-3)    at 
> com.alu.as3.rest.internal.RestBundleActivator.start(RestBundleActivator.java:48)
>
> 04:05:10,985 ERROR [stderr] (MSC service thread 1-3)    at 
> org.jboss.osgi.framework.internal.HostBundleState.transitionToActive(HostBundleState.java:300)
>
> 04:05:11,001 ERROR [stderr] (MSC service thread 1-3)    at 
> org.jboss.osgi.framework.internal.HostBundleState.startInternal(HostBundleState.java:223)
>
> 04:05:11,001 ERROR [stderr] (MSC service thread 1-3)    at 
> org.jboss.osgi.framework.internal.AbstractBundleState.start(AbstractBundleState.java:494)
>
> 04:05:11,016 ERROR [stderr] (MSC service thread 1-3)    at 
> org.jboss.as.osgi.deployment.BundleStartTracker$1.processService(BundleStartTracker.java:144)
>
> 04:05:11,032 ERROR [stderr] (MSC service thread 1-3)    at 
> org.jboss.as.osgi.deployment.BundleStartTracker$1.transition(BundleStartTracker.java:119)
>
> 04:05:11,032 ERROR [stderr] (MSC service thread 1-3)    at 
> org.jboss.msc.service.ServiceControllerImpl.invokeListener(ServiceControllerImpl.java:1416)
>
> 04:05:11,047 ERROR [stderr] (MSC service thread 1-3)    at 
> org.jboss.msc.service.ServiceControllerImpl.access$2700(ServiceControllerImpl.java:49)
>
> 04:05:11,047 ERROR [stderr] (MSC service thread 1-3)    at 
> org.jboss.msc.service.ServiceControllerImpl$ListenerTask.run(ServiceControllerImpl.java:1954)
>
> 04:05:11,063 ERROR [stderr] (MSC service thread 1-3)    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>
> 04:05:11,078 ERROR [stderr] (MSC service thread 1-3)    at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>
> 04:05:11,078 ERROR [stderr] (MSC service thread 1-3)    at 
> java.lang.Thread.run(Thread.java:662)
>
> Who can kindly help me on this?
>
> Thanks in advance!
>
> Rocky,
>
>
>
> _______________________________________________
> jboss-osgi-users mailing list
> jboss-osgi-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jboss-osgi-users

-- 
xxxxxxxxxxxxxxxxxxxxxxxxxxxx
Thomas Diesler
JBoss OSGi Lead
JBoss, a division of Red Hat
xxxxxxxxxxxxxxxxxxxxxxxxxxxx



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-osgi-users/attachments/20120625/3a9956b2/attachment.html 


More information about the jboss-osgi-users mailing list