Jboss 6.3.0: a decent way to remove restyling and use jersey

I am using a jersey.

this is my jboss-deployment-structure:

<?xml version="1.0" encoding="UTF-8"  ?>  
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
<deployment>  
<exclusions>
  <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="javax.ws.rs.api" />      
</exclusions>         

<exclude-subsystems>
    <subsystem name="resteasy" />
    <subsystem name="webservices" />
    <subsystem name="jaxrs" />                         
</exclude-subsystems>          
</deployment>  
</jboss-deployment-structure>  

      

This by itself doesn't work. I had to comment

<resource-root path="jboss-jaxrs-api_1.1_spec-1.0.1.Final-redhat-2.jar"/>

      

in

jbossHOME \ modules \ system \ layers \ bases \ javax \ ws \ rs \ api \\ main module.xml.

The stop service is working fine now, but by commenting out the line I will disable resteasy for every application on the server! and that's a hack and not the right solution. Is there a decent way to disable restyling for a given application only, without touching the overall server configuration?

thank

+3


source to share


1 answer


In JBoss 6 or 7 AS, resteasy is loaded as a dependency module by the JavaEE module. Most of the time, people get stuck here as we cannot rule out JavaEE. However, it is possible to exclude JavaEE and include JavaEE modules that need to be loaded other than those we don't need.

You can read more about this here Fail-safe method of excluding rest ...



Example jboss-deployment-structure.xml from one location (goes to WEB-INF /):

<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.2">
  <deployment>
    <exclude-subsystems>
      <subsystem name="jaxrs" />
      <subsystem name="webservices" />
      <subsystem name="resteasy" />
    </exclude-subsystems>
    <exclusions>
      <module name="javaee.api" />
      <module name="javax.ws.rs.api" />
      <module name="org.jboss.as.jaxrs" />
      <module name="org.jboss.resteasy.resteasy-jaxrs" />
      <module name="org.jboss.resteasy.resteasy-cdi" />
      <module name="org.jboss.resteasy.jackson-provider" />
      <module name="org.jboss.resteasy.resteasy-atom-provider" />
      <module name="org.jboss.resteasy.resteasy-hibernatevalidator-provider" />
      <module name="org.jboss.resteasy.resteasy-jaxb-provider" />
      <module name="org.jboss.resteasy.resteasy-jettison-provider" />
      <module name="org.jboss.resteasy.resteasy-jsapi" />
      <module name="org.jboss.resteasy.resteasy-multipart-provider" />
      <module name="org.jboss.resteasy.resteasy-yaml-provider" />
      <module name="org.codehaus.jackson.jackson-core-asl" />
      <module name="org.codehaus.jackson.jackson-jaxrs" />
      <module name="org.codehaus.jackson.jackson-mapper-asl" />
      <module name="org.codehaus.jackson.jackson-xc" />
      <module name="org.codehaus.jettison" />
      <module name="org.jboss.as.webservices.*" />
      <module name="org.jboss.ws.*" />
    </exclusions>

    <dependencies>
      <module name="javax.activation.api" export="true" />
      <module name="javax.annotation.api" export="true" />
      <!-- <module name="javax.ejb.api" export="true" />
      <module name="javax.el.api" export="true" /> -->
      <module name="javax.enterprise.api" export="true" />
      <module name="javax.enterprise.deploy.api" export="true" />
      <module name="javax.inject.api" export="true" />
      <module name="javax.interceptor.api" export="true" />
      <!-- <module name="javax.jms.api" export="true" />
      <module name="javax.jws.api" export="true" />
      <module name="javax.mail.api" export="true" />
      <module name="javax.management.j2ee.api" export="true" /> -->
      <module name="javax.persistence.api" export="true" />
      <module name="javax.resource.api" export="true" />
      <!-- <module name="javax.rmi.api" export="true" />
      <module name="javax.security.auth.message.api" export="true" />
      <module name="javax.security.jacc.api" export="true" /> -->
      <module name="javax.servlet.api" export="true" />
      <module name="javax.servlet.jsp.api" export="true" />
      <module name="javax.transaction.api" export="true" />
      <module name="javax.validation.api" export="true" />

      <!-- <module name="javax.ws.rs.api" export="true" services="export" /> -->

      <module name="javax.xml.bind.api" export="true" />
      <module name="javax.xml.registry.api" export="true" />
      <module name="javax.xml.soap.api" export="true" />
      <module name="javax.xml.ws.api" export="true" />

      <!-- This one always goes last. -->
      <module name="javax.api" export="true" />
    </dependencies>

  </deployment>
</jboss-deployment-structure>

      

+6


source







All Articles