Jetty-Maven-Plugin legge JettyXML e avvia ancora il contesto predefinito
-
11-12-2019 - |
Domanda
Sto usando Jetty 8.1.4.v20120524 e Maven 3. Ho la seguente configurazione nel mio POM:
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>8.1.4.v20120524</version>
<configuration>
<jettyXml>${project.basedir}/src/main/resources/jetty.xml</jettyXml>
</configuration>
</plugin>
.
Nel mio jetty.xml, definisco un contesto:
<Set name="handler">
<New class="org.eclipse.jetty.server.handler.HandlerList">
<Set name="handlers">
<Array type="org.eclipse.jetty.server.Handler">
<Item>
<New class="org.eclipse.jetty.server.handler.ResourceHandler">
<Set name="welcomeFiles">
<Array type="String"><Item>index.xml,index.xhtml,index.html</Item></Array>
</Set>
</New>
</Item>
<Item>
<New id="Contexts" class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="resourceBase"><SystemProperty name="jetty.home" default="src/main/webapp" /></Set>
<Set name="contextPath">/</Set>
</New>
</Item>
</Array>
</Set>
</New>
</Set>
.
funziona come previsto e inizia la mia applicazione a /:
INFO:oejs.Server:jetty-8.1.4.v20120524
INFO:oejsh.ContextHandler:started o.e.j.w.WebAppContext{/,file:/<MY_DIRECTORY>/src/main/webapp/}
INFO:oejsh.ContextHandler:started o.e.j.w.WebAppContext{/,file:/<MY_DIRECTORY>/src/main/webapp/}
.
Tuttavia, dopo questo il Jetty-Maven-Plugin sembra provare ad avviare un contesto predefinito, che non riesce con la classe non trovata - cerca anche di legarsi a "/", che ovviamente non voglio. Come posso interrompere questo contesto da avviare?Qualsiasi aiuto è molto apprezzato.
Soluzione
Secondo una risposta sulla mailing list (http://dev.eclipse.org/mhonarc/lists/jetty-users/msg02419.html) di Jan Bartel l'app Web Attualmente non può essere configurata esclusivamente con il molo.XML.
Ho quindi risolto il problema spostando le cose relative all'app Web (base di risorse e percorso di contesto) a MAVEN POM.XML.
Altri suggerimenti
Stava usando la versione 8.1.4.v2012052 di Jetty-Maven-Plugin e tentando di impostare il contesto in Pom.xml con qualcosa come:
<configuration>
<webAppConfig>
<contextPath>${application.contextpath}</contextPath>
</webAppConfig>
...
</configuration>
.
Eppure, il contesto è ancora predefinito su "/".
Ho declassato alla versione 7.5.1.v20110908 con la stessa configurazione in POM.XML.Il contesto previsto è stato poi mostrato.
Quindi, penso che questo potrebbe essere un problema con la versione 8.1.4 che viene risolta dal downgrading.