salut
je dois developper des servlets/JSP
A priori tout devrait fonctionner (enfin en théorie

) mais ce ]~#^@~de tomcat 5.5 ne trouve pas une de mes classes JAVA si je l'instancie à partir d'une page JSP (problème de classpath je suppose)
vlà la page :
<%@ page language="Java" import="java.util.*" %>
<%
// on récupère les paramètres
//Collection<PersonsList.PersonInfo> col_pi_personsList= (Collection<PersonsList.PersonInfo>)request.getAttribute("col_pi_personsList");
Collection col_pi_personsList= (Collection)request.getAttribute("col_pi_personsList");
%><html>
<head><title>Test de fichier HTML</title>
<style>
* { font-family:verdana ; font-size:xx-small; }
body { padding:15px; width:300px; }
</style>
</head>
<body>
<h2>Résultat :</h2>
<ul>
<%
/*for ( PersonsList.PersonInfo pi : col_pi_personsList )
out.println("<li>"+pi.getFirstName()+" "+pi.getLastName()+"</li>") ;*/
for ( Iterator i= col_pi_personsList.iterator() ; i.hasNext() ; ) {
PersonsList.PersonInfo pi= (PersonsList.PersonInfo)i.next() ;
out.println("<li>"+pi.getFirstName()+" "+pi.getLastName()+"</li>") ;
}
%>
</ul>
</body>
</html>
déjà on remarque que les nouvelles features du J2SE 5 ne semblent pas supportées (bon ça encore c'est pas un drame)
mais surtout il ne trouve pas la classe PersonsList :
org.apache.jasper.JasperException: Impossible de compiler la classe pour la JSP
Une erreur s'est produite à la ligne: 17 dans le fichier jsp: /personsList.jsp
Erreur de servlet générée:
PersonsList cannot be resolved or is not a type
Une erreur s'est produite à la ligne: 17 dans le fichier jsp: /personsList.jsp
Erreur de servlet générée:
PersonsList cannot be resolved
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:397)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:288)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:293)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
PersonsList.doGet(PersonsList.java:71)
javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/5.5.9.
j'ai alors affiché le clasPath :
<%@ page language="Java" import="java.util.*" %>
<html>
<head><title>Test de fichier HTML</title>
<style>
* { font-family:verdana ; font-size:xx-small; }
body { padding:15px; width:300px; }
</style>
</head>
<body>
<%=System.getProperties().getProperty("java.class.path")%>
</body>
</html>
ce qui renvoit ceci :
<html>
<head><title>Test de fichier HTML</title>
<style>
* { font-family:verdana ; font-size:xx-small; }
body { padding:15px; width:300px; }
</style>
</head>
<body>
C:\Program Files\Apache Software Foundation\Tomcat 5.5\bin\bootstrap.jar
</body>
</html>
=> J'ai alors ajouté
%CATALINA_HOME%\webapps\jmonvill\WEB-INF\classes
c'est à dire
C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\jmonvill\WEB-INF\classes
dans mon CLASSPATH
Mes classes *.class :
/cygdrive/c/Program Files/Apache Software Foundation/Tomcat 5.5/webapps/jmonvill/WEB-INF/classes
$ ls -1
ConnMySQL$CantConnect2MySQLServException.class
ConnMySQL.class
PersonsList$PersonInfo.class
PersonsList.class
mais le JSP d'affichage de classpath retourne exactement la même chose qu'avant...
bref, je ne comprend pas, je ne sais pas comment faire, sniff, sniff
