Actuellement, j'essaie d'afficher des informations de mon servlet Java sur sa page JSP associée. Cependant, lorsque j'exécute le programme, la sortie attendue du fichier JSP est affichée dans le répertoire de servlet.
visuellement, la page Display.jsp:
p>
et \ ServertorRun (la page de servlet qui devrait afficher un écran vide):
p>
Ainsi, ma question est, p>
Pourquoi le contenu de /display.jsp apparaît-il dans / Servertorun? P> blockQuote>
Voici le code de dopost () code> de la classe Servertorun: strong> p>
xxx pré> < Strong> et le balisage pour affichage.jsp: strong> p>
xxx pré> Toute aide est appréciée. p> p>
3 Réponses :
Parce que du servlet, vous redirigez vers l'affichage.jsp. Essayez d'ajouter n'importe quel contenu dynamique dans JSP et d'exécuter les deux, seul servlet serait capable d'afficher le contenu dynamique.! P>
Je pense que je comprends votre question. Vous parlez de répertoires. P>
Dans votre URL, le chemin (/grief_ui/display.jsp et / grief_ui / servlettorun) n'est pas nécessaire lié aux dossiers. P>
C'est un élément structurant de l'URL. Parfois, vous n'avez même pas de fichiers nommés comme ces éléments de chemin. Le chemin devient normalement traité par un servlet et l'utilisateur obtient la sensation d'utiliser des dossiers, oui, mais ce n'est qu'une description pour la localisation des ressources. P>
Bien sûr, mais comment puis-je résoudre ce problème. Qu'est-ce que je change dans mon code, parce que je ne comprends toujours pas vraiment ce qui ne va pas. Comme je l'ai dit dans ma question, pourquoi le contenu de Display.jsp apparaissait-il lorsque je visiteurs Servertorun?
HTTP fonctionne comme suit, couramment expliquée: 1) Le client (principalement le navigateur) envoie une demande au serveur (votre conteneur de servlet comme Tomcat). 2) Cette demande est traitée par un servlet. Disons votre servlettorun. 3) Le servlet écrit une réponse. 4) La réponse revenue au navigateur, qui est affichée.
Disons donc servlettorun reçoit la demande du navigateur. Dans les lignes: URL String = "/Display.jsp"; demande.getservletContext (). GetTrequestDispatcher (URL); transmettre (demande, réponse); Vous transférez le contrôle à l'affichage.jsp. Maintenant, l'affichage.jsp écrit à la réponse, que le navigateur affiche enfin. C'est pourquoi ils affichent tous les deux les mêmes informations. Je ne comprends pas vraiment ce que vous êtes à la hauteur, je ne peux donc pas vraiment vous dire quelle est la solution.
Si le servlet ne doit rien afficher (blanc), commencez la ligne en avant () et écrivez un HTML vide à la réponse: réponse.write ("<
est que votre servlet piéppe toutes les demandes, vous devez remarquer quelle annotation vous mettez dans votre classe Servertorun.java ou si vous mettez dans le descripteur d'affichage (web.xml) les annotations du servlet. P>