Bonjour à tous,
Je suis un débutant aussi bien avec JSP qu'avec Tomcat, mais pas avec Java, que je connais à peu près.
J'ai configuré un environnement de développement en suivant les intructions de ce tutorial: http://www.vogella.com/articles/EclipseWTP/article.html
Je suis maintenant capable de créer une Servlet basique, ainsi qu'un JSP basique, et de les exécuter sur mon serveur Tomcat de tests.
Cependant, j'ai un problème pour faire marcher un projet web qui n'a pas été créé par moi (mais qui marchait auparavant).
Ce projet Web a pour index un JSP (index.jsp) qui contient l'instruction suivante :
<jsp:include page="ArchiveExplorerServlet" flush="true"/>
Quand j'exécute le JSP dans mon navigateur Web (ou directement en exécutant le projet depuis Eclipse grâce à l'option "Run on server"), le serveur renvoie :
The requested resource (/spagbol/ArchiveExplorerServlet) is not available
("spagbol" est le nom de mon projet)
Quand je jette un oeil au web.xml créé par mon collègue, je trouve ceci :
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <servlet>
<description></description>
<display-name>ArchiveExplorerServlet</display-name>
<servlet-name>ArchiveExplorerServlet</servlet-name>
<servlet-class>com.IBM.baz.Spagbol.Servlets.ArchiveExplorerServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ArchiveExplorerServlet</servlet-name>
<url-pattern>/ArchiveExplorerServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ArchiveExplorerServlet</servlet-name>
<url-pattern>/GetArchiveExplorerContent</url-pattern>
</servlet-mapping> |
De plus, dans la version finale (compilée et déployée) qui existe sur notre serveur de production, la hiérarchie des dossiers est la suivante :
1 2
|
WEB-INF\classes\com\XXX\baz\Spagbol\Servlets\ArchiveExplorerServlet.class |
Je ne comprends donc pas où (dans Tomcat ou dans mon projet) est défini l'emplacement supposé de ArchiveExplorerServlet.class -- puisque mon collègue arrivait à appeler cette classe uniquement en utilisant page="ArchiveExplorerServlet", sans indiquer de chemin explicite.
Note: Quand je place ArchiveExplorerServlet.class directement dans le même dossier que index.jsp (pour tester), le serveur trouve bien la Servlet. Donc c'est bien bêtement un problème d'emplacement. Mais, encore une fois, mon collègue avait placé ses classes dans WEB-INF\classes\com\XXX\baz\Spagbol\Servlets alors que dans le JSP il se contente de nommer la classe.
Partager