Ho un'applicazione client server. Il server è fatto di servizi rilassanti con jersey e viene distribuito su tomcat 7. In realtà, ho bisogno di creare il contesto dei servizi (leggere alcuni file di grandi dimensioni) prima che il client acceda ai servizi. È possibile creare una classe principale della mia webapp o no?classe principale di un'applicazione Web tomcat
risposta
Un'applicazione Web in JavaEE non ha una "classe principale" nello stesso senso di un'applicazione desktop; sicuramente, l'esecuzione deve iniziare da un metodo main
da qualche parte, ma sarà gestita dal contenitore web (Tomcat nel tuo caso) e fuori dalla tua portata.
Che cosa si può fare, invece, è di creare un servlet che precarica i dati necessari nel contesto dell'applicazione utilizzando il suo metodo init
(supponendo che i dati saranno gli stessi per tutti i clienti, e, idealmente, non sarà modificato da loro). Inoltre, nella configurazione del servlet, si specifica che il servlet deve essere caricato all'avvio e in questo modo si assicura che i dati vengano caricati una volta all'inizio dell'applicazione e che tutti i client possano accedervi dal contesto dell'applicazione.
EDIT:
Nelle versioni più recenti delle specifiche Servlet (2.3 +) il modo preferito è quello di utilizzare gli ascoltatori di contesto, vedere questo answer per i dettagli.
- 1. Tomcat & Spring Web - Classe non trovata Eccezione org.springframework.web.context.ContextLoaderListener
- 2. esegui l'applicazione java non web su tomcat
- 3. Utilizzo della presa Web con Tomcat 7
- 4. App Web sullo schermo principale (stile iphone)?
- 5. Integrazione di Equinox OSGi nell'app web Apache Tomcat
- 6. Tomcat - fare una cartella di progetto della web root
- 7. Distribuzione di solo HTML, pagina Web CSS a Tomcat
- 8. Arrestare un tomcat dell'applicazione Web dalla riga di comando
- 9. Avvia browser Web dopo l'avvio di Tomcat in Eclipse
- 10. esegue Project Jersey (servizio web di riposo) per Tomcat
- 11. Elenco di applicazioni Web installate in Apache Tomcat
- 12. Chiamata al metodo principale della classe ereditata dalla classe base
- 13. sbt: selezionare la classe principale per l'esecuzione
- 14. WEB-INF/classes/vs WEB-INF/lib/*. Jar in priorità del percorso di classe?
- 15. Gradle - Impossibile trovare o caricare classe principale
- 16. java Impossibile trovare o caricare classe principale
- 17. Creazione libreria jar senza classe principale
- 18. Metodo principale in una classe interna statica.?
- 19. Il metodo principale appartiene a qualsiasi classe?
- 20. Classe CoffeeScript non accessibile in javascript principale
- 21. Uscita diversa dopo l'esecuzione classe principale
- 22. Aggiunta di risorse esterne al percorso classe in Tomcat 8
- 23. Implementare la cache HTTP (ETag) nell'API Web principale di ASP.NET
- 24. Dump thread di Tomcat
- 25. Come forzare tomcat a ricaricare file classe/guerra recentemente compilati
- 26. Jersey REST Web Service, Tomcat, Eclipse e 404's
- 27. Principale classe di attività non trovata se implementa GooglePlayServicesClient.ConnectionCallbacks/OnConnectionFailedListener
- 28. Metodi di ordinamento chiamata/prova nella classe principale
- 29. Errore ClassNotFoundException in Tomcat 5.5 e Tomcat 6.0
- 30. Accesso alla classe di progetto principale da una classe di libreria
Sì. Un ascoltatore è la strada da percorrere. – cherouvim
Grazie mille! – TheFrenchGuy