Mantis Bugtracker
  

Viewing Issue Advanced Details Jump to Notes ] View Simple ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0004188 [Resin] minor always 08-25-10 05:52 09-15-10 12:14
Reporter Vsevolod Oparin View Status public  
Assigned To reza
Priority normal Resolution unable to reproduce Platform
Status closed   OS
Projection none   OS Version
ETA none Fixed in Version Product Version 4.0.9
  Product Build
Summary 0004188: Conflict between jersey and resin
Description Hello! I use jersey for my web application with rest.
When I try to use rest command, it throws exception

java.lang.RuntimeException: com.sun.jersey.api.container.ContainerException: Reference to class com.sun.jersey.server.impl.jcdi.JCDIComponentExtension is null

This exception throws cause InjectManager can't find out JCDIComponentExtension.
I try to write beans.xml in meat-inf of jersey like this

<beans xmlns="http://java.sun.com/xml/ns/javaee" [^]
      xmlns:jcdi= "urn:java:com.sun.jersey.server.impl.jcdi">
      <jcdi:JCDIComponentExtension/>
</beans>

but it doesn't work.

Steps To Reproduce
Additional Information
Attached Files

- Relationships

- Notes
(0004732)
olaf2010
08-27-10 03:51

I can confirm this as well for resin 4.0.10 and its a blocker for me.

It works in resin 2.1.17.

Initialized here is jersey through the old servlet way to make it work with older containers (such as resin 2.1.17)

    <servlet>
        <servlet-name>RestApplicationServlet</servlet-name>
        <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
        <init-param>
            <param-name>javax.ws.rs.Application</param-name>
            <param-value>de.ecopatz.ws.jersey.RestApplication</param-value>
        </init-param>
    </servlet>

RestApplication extends javax.ws.rs.core.Application as proposed.

Exception is here:

com.sun.jersey.api.container.ContainerException: Reference to class com.sun.jersey.server.impl.jcdi.JCDIComponentExtension is null

A complete trace:

com.sun.jersey.api.container.ContainerException: Reference to class com.sun.jersey.server.impl.jcdi.JCDIComponentExtension
is null
    at com.sun.jersey.server.impl.jcdi.JCDIComponentProviderFactory.init(JCDIComponentProviderFactory.java:99)
    at com.sun.jersey.server.impl.application.WebApplicationImpl._initiate(WebApplicationImpl.java:720)
    at com.sun.jersey.server.impl.application.WebApplicationImpl.access$600(WebApplicationImpl.java:153)
    at com.sun.jersey.server.impl.application.WebApplicationImpl$11.f(WebApplicationImpl.java:652)
    at com.sun.jersey.server.impl.application.WebApplicationImpl$11.f(WebApplicationImpl.java:649)
    at com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:177)
    at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:649)
    at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:644)
    at com.sun.jersey.spi.container.servlet.ServletContainer.initiate(ServletContainer.java:428)
    at com.sun.jersey.spi.container.servlet.ServletContainer$InternalWebComponent.initiate(ServletContainer.java:277)
    at com.sun.jersey.spi.container.servlet.WebComponent.load(WebComponent.java:573)
    at com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:211)
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:332)
    at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:496)
    at javax.servlet.GenericServlet.init(GenericServlet.java:70)
    at com.caucho.server.dispatch.ServletConfigImpl.createServletImpl(ServletConfigImpl.java:1318)
    at com.caucho.server.dispatch.ServletConfigImpl.createServlet(ServletConfigImpl.java:1168)
    at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:98)
    at de.ecopatz.tools.filter.WhitespaceFilter.doFilter(WhitespaceFilter.java:73)
    at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:88)
    at de.ecopatz.tools.filter.LoadBalancingFilter.doFilter(LoadBalancingFilter.java:75)
    at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:88)
    at de.ecopatz.tools.filter.MobileRedirectionFilter.doFilter(MobileRedirectionFilter.java:92)
    at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:88)
    at de.ecopatz.tools.filter.IFilter.doFilter(IFilter.java:112)
    at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:88)
    at de.ecopatz.tools.filter.LoginFilter.doFilter(LoginFilter.java:59)
    at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:88)
    at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:183)
    at com.caucho.server.webapp.AccessLogFilterChain.doFilter(AccessLogFilterChain.java:92)
    at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:286)
    at com.caucho.server.hmux.HmuxRequest.handleInvocation(HmuxRequest.java:475)
    at com.caucho.server.hmux.HmuxRequest.handleRequestImpl(HmuxRequest.java:380)
    at com.caucho.server.hmux.HmuxRequest.handleRequest(HmuxRequest.java:346)
    at com.caucho.network.listen.TcpSocketLink.dispatchRequest(TcpSocketLink.java:662)
    at com.caucho.network.listen.TcpSocketLink.handleRequestsImpl(TcpSocketLink.java:625)
    at com.caucho.network.listen.TcpSocketLink.handleRequests(TcpSocketLink.java:576)
    at com.caucho.network.listen.TcpSocketLink$AcceptTask.doTask(TcpSocketLink.java:1159)
    at com.caucho.network.listen.TcpSocketLink$ConnectionReadTask.runThread(TcpSocketLink.java:1092)
    at com.caucho.network.listen.TcpSocketLink$AcceptTask.run(TcpSocketLink.java:1126)
    at com.caucho.env.thread.ResinThread.runTasks(ResinThread.java:170)
    at com.caucho.env.thread.ResinThread.run(ResinThread.java:126)
 
(0004733)
olaf2010
08-27-10 03:56

( Using latest jersey 1.3 )

maybe this is related to: http://bugs.caucho.com/view.php?id=4182 [^]
 
(0004748)
olaf2010
09-13-10 09:09

just fyi, since jersey is now in version 1.4

- works with resin 2.1.17
- does not work with resin 4.0.10
 
(0004749)
reza
09-14-10 12:54
edited on: 09-14-10 13:57

So far, I've been unable to reproduce this issue on trunk (it may have already been fixed). It would be greatly helpful to have a failing code sample.

I did, however, see that you might run into class-path issues if you have another JAX-RS implementation other than Jersey (Apache CXF in my case) placed in resin/lib while Jersey is loaded from WEB-INF/lib, especially if the JSR 311 jar is not placed in resin/lib. At some point if we ship Apache CXF in resin/lib, we will also likely ship the JSR 311 jar as well so this issue will not occur.

 

- Issue History
Date Modified Username Field Change
08-25-10 05:52 Vsevolod Oparin New Issue
08-27-10 03:51 olaf2010 Note Added: 0004732
08-27-10 03:51 olaf2010 Issue Monitored: olaf2010
08-27-10 03:56 olaf2010 Note Added: 0004733
09-08-10 12:36 reza Assigned To  => reza
09-08-10 12:36 reza Status new => assigned
09-13-10 09:09 olaf2010 Note Added: 0004748
09-14-10 12:54 reza Note Added: 0004749
09-14-10 12:54 reza Status assigned => feedback
09-14-10 13:57 reza Note Edited: 0004749
09-15-10 12:14 reza Status feedback => closed
09-15-10 12:14 reza Resolution open => unable to reproduce


Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
38 total queries executed.
30 unique queries executed.
Powered by Mantis Bugtracker