Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-1304

No way to remove/exclude/disable resteasy for a given WAR

    XMLWordPrintable

Details

    Description

      I am including Jersey 2.0 jars in my WAR:

      WEB-INF/lib/javax.ws.rs-api-2.0-rc3.jar
      WEB-INF/lib/jersey-common-2.0-rc1.jar
      WEB-INF/lib/jersey-media-json-jettison-2.0-rc1.jar
      WEB-INF/lib/jersey-container-servlet-core-2.0-rc1.jar
      WEB-INF/lib/jersey-client-2.0-rc1.jar
      WEB-INF/lib/jersey-container-servlet-2.0-rc1.jar
      WEB-INF/lib/jersey-server-2.0-rc1.jar
      WEB-INF/lib/jersey-proxy-client-2.0-rc1.jar
      

      jboss-deployment-structure.xml

      <?xml version="1.0" encoding="UTF-8"?>
      <jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
          <deployment>
      
              <exclude-subsystems>
                  <subsystem name="resteasy"/>
                  <subsystem name="jaxrs"/>
                  <subsystem name="webservices"/>
              </exclude-subsystems>
      
              <exclusions>
                  <module name="org.slf4j"/>
                  <module name="org.slf4j.impl"/>
                  <module name="org.slf4j.ext"/>
                  <module name="org.slf4j.jcl-over-slf4j"/>
                  <module name="org.apache.commons.logging"/>
                  <module name="org.apache.log4j"/>
      
                  <module name="javax.ws.rs.api"/>
                  <module name="org.jboss.resteasy" />
                  <module name="org.jboss.resteasy.resteasy-atom-provider" />
                  <module name="org.jboss.resteasy.resteasy-cdi" />
                  <module name="org.jboss.resteasy.resteasy-jaxrs" />
                  <module name="org.jboss.resteasy.resteasy-jaxb-provider" />
                  <module name="org.jboss.resteasy.resteasy-jackson-provider" />
                  <module name="org.jboss.resteasy.resteasy-jsapi" />
                  <module name="org.jboss.resteasy.resteasy-multipart-provider" />
                  <module name="org.jboss.resteasy.async-http-servlet-30" />
      
                  <!--<module name="org.hibernate"/>-->
              </exclusions>
      
          </deployment>
      </jboss-deployment-structure>
      

      Yet I am getting NoSuchMethodError because JBoss won't stop exporting it's own JAX-RS packages over the jars embedded in my war despite my attempts to disable it via jboss-deployment-structure.xml.

      javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: java.lang.NoSuchMethodError: javax.ws.rs.core.Response.getStatusInfo()Ljavax/ws/rs/core/Response$StatusType;
      	at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:321) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:372) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:335) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:218) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:681) ~[jetty-servlet-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:449) [jetty-servlet-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1084) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:376) [jetty-servlet-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1018) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.Server.handle(Server.java:451) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.HttpChannel.run(HttpChannel.java:252) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:266) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.run(AbstractConnection.java:240) [jetty-io-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_13]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_13]
      	at java.lang.Thread.run(Thread.java:722) [na:1.7.0_13]
      Caused by: org.glassfish.jersey.server.ContainerException: java.lang.NoSuchMethodError: javax.ws.rs.core.Response.getStatusInfo()Ljavax/ws/rs/core/Response$StatusType;
      	at org.glassfish.jersey.servlet.internal.ResponseWriter.rethrow(ResponseWriter.java:219) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.glassfish.jersey.servlet.internal.ResponseWriter.failure(ResponseWriter.java:201) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:343) ~[jersey-server-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:223) ~[jersey-server-2.0-rc1.jar:na]
      	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:231) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:227) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.internal.Errors.process(Errors.java:275) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.internal.Errors.process(Errors.java:257) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.internal.Errors.process(Errors.java:227) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:191) ~[jersey-server-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:819) ~[jersey-server-2.0-rc1.jar:na]
      	at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:311) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	... 17 common frames omitted
      Caused by: java.lang.NoSuchMethodError: javax.ws.rs.core.Response.getStatusInfo()Ljavax/ws/rs/core/Response$StatusType;
      	at org.glassfish.jersey.message.internal.OutboundJaxrsResponse.from(OutboundJaxrsResponse.java:97) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.ContainerResponse.<init>(ContainerResponse.java:88) ~[jersey-server-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:341) ~[jersey-server-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:101) ~[jersey-server-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:217) ~[jersey-server-2.0-rc1.jar:na]
      	... 26 common frames omitted
      20:01:05.816 WARN  [Camel (camelContext) thread #10 - wsgw://0.0.0.0:3456] org.eclipse.jetty.servlet.ServletHandler - 
      javax.servlet.ServletException: org.glassfish.jersey.server.ContainerException: java.lang.NoSuchMethodError: javax.ws.rs.ClientErrorException.validate(Ljavax/ws/rs/core/Response;Ljavax/ws/rs/core/Response$Status$Family;)Ljavax/ws/rs/core/Response;
      	at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:321) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:372) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:335) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:218) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:681) ~[jetty-servlet-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:449) [jetty-servlet-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1084) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:376) [jetty-servlet-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1018) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:136) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.Server.handle(Server.java:451) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.HttpChannel.run(HttpChannel.java:252) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:266) [jetty-server-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.run(AbstractConnection.java:240) [jetty-io-9.0.2.v20130417.jar:9.0.2.v20130417]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_13]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_13]
      	at java.lang.Thread.run(Thread.java:722) [na:1.7.0_13]
      Caused by: org.glassfish.jersey.server.ContainerException: java.lang.NoSuchMethodError: javax.ws.rs.ClientErrorException.validate(Ljavax/ws/rs/core/Response;Ljavax/ws/rs/core/Response$Status$Family;)Ljavax/ws/rs/core/Response;
      	at org.glassfish.jersey.servlet.internal.ResponseWriter.rethrow(ResponseWriter.java:219) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.glassfish.jersey.servlet.internal.ResponseWriter.failure(ResponseWriter.java:201) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.ServerRuntime$Responder.process(ServerRuntime.java:343) ~[jersey-server-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:223) ~[jersey-server-2.0-rc1.jar:na]
      	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:231) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:227) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.internal.Errors.process(Errors.java:275) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.internal.Errors.process(Errors.java:257) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.internal.Errors.process(Errors.java:227) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317) ~[jersey-common-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:191) ~[jersey-server-2.0-rc1.jar:na]
      	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:819) ~[jersey-server-2.0-rc1.jar:na]
      	at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:311) ~[jersey-container-servlet-core-2.0-rc1.jar:na]
      	... 17 common frames omitted
      Caused by: java.lang.NoSuchMethodError: javax.ws.rs.ClientErrorException.validate(Ljavax/ws/rs/core/Response;Ljavax/ws/rs/core/Response$Status$Family;)Ljavax/ws/rs/core/Response;
      	at javax.ws.rs.ClientErrorException.<init>(ClientErrorException.java:64) ~[javax.ws.rs-api-2.0-rc3.jar:na]
      	at javax.ws.rs.NotFoundException.<init>(NotFoundException.java:60) ~[javax.ws.rs-api-2.0-rc3.jar:na]
      	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:213) ~[jersey-server-2.0-rc1.jar:na]
      	... 26 common frames omitted
      

      Attachments

        Activity

          People

            sdouglas1@redhat.com Stuart Douglas
            Aaron.Whiteside Aaron Whiteside (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: