2017-05-17 1 views
0

Je cteate une jetée & jersey projet intégré avec IDEA et Maven, je l'ai mis dans Github https://github.com/Mengqi777/JettyProject. Exécuter JettyServerStart.java démarrer le serveur, dans la barre d'adresse du navigateur entrer localhost:8080/dynamic, show OK, entrez localhost:8080/static, montrer fichier ressource statiqueDéployer une guerre Jetty & Jersey intégrée à jetty9, seulement peut voir le fichier statique?

Maintenant, j'empaquette dans un fichier de guerre, et le mettre dans la jetée répertoire webapps. Mais seulement peut voir fichier statique dans le navigateur avec entrer localhost:8080/static .404 Introuvable Erreur dans le navigateur avec entrer localhost:8080/dynamic

Qu'est-ce qui s'est passé?

Que dois-je faire pour empaqueter ce projet dans un fichier war ou un fichier jar et l'exécuter dans la jetée avec succès?

+0

Maintenant, je ne peux exécuter ce projet intégré dans IDEA. Ce que je veux savoir, c'est comment le faire sans IDEA? –

Répondre

0

Vous faites des choses dans votre utilisation de jetée intégrée dans JettyServerStart.java que vous ne déclarez pas/configurez dans votre fichier webapp ou war.

C'est un projet Maven, mais pas déclaré comme un projet webapp ou de guerre (dans le pom.xml)

Son ne dispose pas de son WEB-INF au bon endroit (structure de répertoire Maven sage), qui signifie que votre fichier de guerre construit est invalide.

Les dépendances ne sont pas correctement déclarées pour un projet webapp ou la guerre (vous ne pouvez pas inclure serveur jetée dans un fichier de guerre)

Votre mal situé WEB-INF/web.xml ne pas effectuer les mêmes étapes de configuration que votre JettyServerStart.java

Vous ne spécifiez pas comment vous avez créé votre répertoire ${jetty.base} pour prendre en charge ce fichier war?

Vous n'avez pas spécifié la version de jetty-distribution ou jetty-home que vous avez téléchargée ou que vous tentez de travailler.

L'instruction "et le mettre dans le répertoire webapps jetty" n'est pas claire, laquelle? (l'utilisation de jetty-distribution/webapps est invalide et entraînera beaucoup d'erreurs et d'avertissements si vous essayez de l'utiliser pour vos propres webapps, il n'y a pas de jetty-home/webapps et vous n'avez pas identifié votre configuration de base de jetons)

La façon dont votre projet est déclaré maintenant, même assemblé manuellement, ignorant complètement maven, vous n'avez pas de servlets, pas de filtres, pas d'écouteurs, pas d'initialisateurs, seulement un DefaultServlet obligatoire sur le modèle d'URL / vous donnant un contenu statique. C'est pourquoi l'accès http://localhost:8080/static/ fonctionne, mais rien d'autre.

+0

Merci beaucoup, je sais très peu de choses sur Jetty et Maven, et je vais en apprendre plus sur les deux. –