2013-04-01 15 views
9

Quando uso jetty6, Io uso il seguente:Come distribuire la mia applicazione Web su jetty9 come applicazione root?

<Configure class="org.mortbay.jetty.webapp.WebAppContext"> 


    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> 
    <!-- Required minimal context configuration :      --> 
    <!-- + contextPath             --> 
    <!-- + war OR resourceBase           --> 
    <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --> 
    <Set name="contextPath">/</Set> 
    <Set name="resourceBase"><SystemProperty name="jetty.home" default="."/>/webapps/myapp</Set> 

</Configure> 

questo file si trova nella cartella contesti, di nome myapp.xml

Ma passare a molo 9, prima v'è alcuna cartella tali "contesti", e metto myapp.xml in webapps proprio come test.xml, riavvia il molo e vai a http://localhost:8080, la pagina rimane quella di default, non la mia applicazione.

Qualcuno può darmi un suggerimento?

+2

"Non funziona" non è una descrizione del problema sufficiente. –

risposta

19

In Jetty 6, se si ha

${jetty.home}/contexts/myapp.xml 

con molo 9.0, spostarlo in

${jetty.home}/webapps/myapp.xml 

con molo 9.1+, spostarlo in

${jetty.base}/webapps/myapp.xml 

Assicurarsi che il la directory webapp esplosa è lo stesso nome del file xml per impedire la doppia implementazione.

È inoltre necessario modificare il contesto del file XML per Jetty 9.

<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" 
      "http://www.eclipse.org/jetty/configure_9_0.dtd"> 
<Configure class="org.eclipse.jetty.webapp.WebAppContext"> 
    <Set name="contextPath">/</Set> 
    <Set name="war"><Property name="jetty.home" default="." />/webapps/myapp</Set> 
</Configure> 

Oppure, in alternativa, solo il nome la directory webapp esploso

${jetty.home}/webapps/ROOT 

Documentazione trovato:

http://www.eclipse.org/jetty/documentation/current/configuring-deployment.html

Updat per Jetty 9.1

+0

Grazie, sembra funzionante, dal registro posso vedere la mia app distribuita, ma la pagina di "http: // localhost: 8080" è ancora quella di default. Voglio che la mia applicazione sia l'applicazione di root. – Tom

-1

È possibile utilizzare lo /root o root.war. Vedi this link.

Problemi correlati