2015-07-16 5 views
6

È possibile impedire l'esecuzione di ServletContainerInitializer di un jar fornito.Impedisci esecuzione di ServletContainerInitializer o come utilizzare l'ordine assoluto

Desidero impedire l'esecuzione di JerseyServletContainerInitializer.java fornita da Glassfish 4.1 come pacchetto osgi (in jersey-container-servlet.jar).

O come posso usare il <absolute-order> di web.xml per far rispettare il caricamento della ResteasyServletInitializer.java previsto resteasy-servlet-initializer-3.0.11.Final.jar prima dell'esecuzione della controparte Jersey?

Non capisco come ciò possa essere ottenuto utilizzando il web.xml. Anche la specificazione di ServletContainerInitializer stati:

In entrambi i casi, i servizi ServletContainerInitializer da file JAR frammento web esclusi da un ordinamento assoluto deve essere ignorato, e l'ordine in cui questi servizi vengono scoperti deve seguire classloading modello di delega dell'applicazione .

Ho quindi provato nel mio glassfish-web.xml ma senza alcun effetto.

Per favore guidami su questo.

Acclamazioni

(ps rimozione jersey-container-servlet.jar dal GlassFish/modules/cartella "funziona")

risposta

0

Web frammento ordinamento non funziona, perché la maglia-container-servlet.jar non è un vero e proprio web frammento.

Ma le seguenti opere in Webogic 12.2, che utilizza Jersey 2.

Creare classe per la vostra applicazione

package my.app; 

public class MyJaxRSApplication extends javax.ws.rs.core.Application {} 

Registrati Rest Easy servlet con il nome completo di questa classe in web.xml

<servlet> 
    <servlet-name>my.app.MyJaxRSApplication</servlet-name> 
    <servlet-class>org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher</servlet-class> 
</servlet> 

Ciò non impedirà l'esecuzione di JerseyServletContainerInitializer, ma non registrerà il servlet di Jersey.

+0

Grazie per la risposta. Ne darò un'occhiata non appena avrò tempo. La nostra attuale "soluzione", che elimina jersey-container-servlet.jar, non è in realtà una soluzione a lungo termine. – drame

Problemi correlati