11
votes

getContextpath à l'aide de servlet

Le chemin de contexte dans jboss-web.xml est mentionné comme / test , mais mon nom de fichier de guerre est test-0.0.1 . J'ai besoin de ce nom de fichier de guerre en utilisant httpservlet . S'il vous plaît dites-moi le nom de la fonction. J'ai essayé getcontextpath () , mais il renvoie le test. Merci


0 commentaires

4 Réponses :


4
votes

servleContext.getContextPath () est le moyen d'obtenir le chemin de contexte. Il peut différer du nom du fichier de guerre, mais je ne peux pas penser à une raison pour laquelle vous pourriez avoir besoin du nom de fichier de guerre.


0 commentaires

7
votes

Si la guerre est élargie, vous pouvez utiliser servleContext.getrePath () code> en combinaison avec fichier.getName () code> pour obtenir le nom de dossier expansé. Ce sera le même que le nom du fichier de guerre.

String name = new File(getServletContext().getRealPath("/")).getName();


1 commentaires

@Baluc mais GetRealPath () pourrait donner la valeur de la racine de contenu qui sera racine de contexte. Le nom du fichier de guerre de l'autre côté peut être différent de la racine de contexte droite?



1
votes

De l'API Servlet il n'y a pas moyen d'accéder au nom du fichier de guerre. Le nom du fichier de guerre est différente de la racine du contexte. Et, même le ServletContext.getRealPath () est l'emplacement d'extrait du fichier de guerre, qui peut être différent.


0 commentaires

39
votes

Voici la liste des fonctions disponibles, ainsi qu'un graphique montrant comment ils sont liés. Dans cet exemple, le nom du fichier de guerre est généralement dans la pièce "Point de contexte", dans ce cas "MyApp". Il s'agit d'un dossier Créer par Tomcat depuis le fichier War et, tout en basé sur le nom du fichier de guerre, il n'a pas besoin d'être identique. Recherchez un dossier avec un nom comme "Test".

 Entrez la description de l'image ici

(de HTTPServletReQuest Chemin de décodage )


3 commentaires

Ce diagramme est excellent et met en évidence l'insuffisance du Javadoc officiel pour HttpservletQuest.


J'ai essayé d'ajouter ce diagramme comme la réponse à d'autres questions sur Stackoverflow, mais les modérateurs l'ont supprimé, car même si le diagramme répond à de nombreuses questions, les modérateurs pensent que si vous mettez la "même" réponse à plusieurs questions, que les questions doivent au contraire. être marqué comme dupliqué. Il y a une grande différence entre deux questions identiques et deux questions nécessitant le même diagramme pour expliquer la réponse. N'hésitez pas à copier le diagramme dans d'autres questions si vous pensez que cela vous aiderait.


Mise à jour de blog link: AgileTribe.purplehillsbooks.com/2016/02/23 / ...