2011-05-07 15 views
7

Per un progetto per animali domestici, vorrei che un Jetty incorporato eseguisse un'app MVC di Spring Web. Ho usato Spring in web container (dove è facile dire "da dove cominciare") e ho usato Jetty embedded senza Spring.Embedded Jetty e Spring Web MVC

Mi sembra un po 'il problema del pollo o dell'uovo se voglio che entrambi lavorino insieme. Qual è il modo migliore per organizzare il progetto? In altre parole, cosa devo inserire in main()? Dovrebbe essere un'app di Spring che sembra avere Jetty come un bean (e quindi i contesti?)? O dovrei iniziare da solo Jetty e collegare Spring in tramite il listener di servlet? Quali sono i caveat?

risposta

3

Il jetty in un contenitore Spring viene utilizzato per avviare Webapp, Springified o non. La webapp e la tua webapp non hanno lo stesso contesto Spring senza trucchi.

Quindi, è necessario creare un server Jetty nel main, aggiungere la propria webapp e avviare il server. Il modo migliore è utilizzare un web.xml come un comune server Java EE e aggiungere questo descrittore al server Jetty.

0

Penso che sia più ragionevole avviare solo Jetty e collegare Spring tramite il listener di servlet in web.xml. Lascia che Spring gestisca tutti i bean specifici per app e lascia che il jetty si concentri sull'esecuzione della tua app, e forse un giorno puoi distribuire l'app su un servlet container antoher senza modificare nulla.

-1

questo è un modo per incorporare Jetty nella primavera http://www.springbyexample.org/examples/embedded-spring-web-services.html

+0

Mentre questo link può rispondere alla domanda, [è meglio includere le parti essenziali della risposta qui] (http://meta.stackexchange.com/questions/8231/are-answers-that-just-contain-links-elsewhere-really-good-answers/8259 # 8259) e fornire il link per riferimento. Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia. – udondan