Un bug de fou sous tomcat? - Java - Programmation
Marsh Posté le 11-12-2003 à 22:20:17
Tiens, c'est bizarre...
J'ignorais que tomcat utilisait ant pour compiler les jsp.
la méthode
public void org.apache.tools.ant.taskdefs.Javac.setDebug(boolean b)
existe bel et bien donc l'erreur suivante :
java.lang.NoSuchMethodError: org.apache.tools.ant.taskdefs.Javac.setDebug(Z)V
est vraiment suspecte.
Je subodore un pbm de ClassLoader qui devrait se résoudre simplement par un restart du serveur.
question : ils servent à quoi les import s'il n'y a que du html "pur" dans ta jsp ?
remarque : un package java qui s'apelle "ToUseBeans" c'est laid.
Marsh Posté le 12-12-2003 à 04:37:08
ReplyMarsh Posté le 12-12-2003 à 10:44:05
au fait il y avait des choses mais j'ai tout vire et j'ai meme essaye de compiler une JSP sans code Java et ca a pas marche c'est vraiment bizarre.
et pour ToUseBeans tu as raison c'est abjecte mais j'allais pas l'appeler Beans sinon si vous avez des idees d'appellation de package je suis preneur
Marsh Posté le 12-12-2003 à 10:55:47
au fait j'ai redemarre et ca bugge tjrs c'est fou!
Marsh Posté le 12-12-2003 à 11:06:14
t'aurais pas une autre version de ant qui traine quelque part ???
t'as touché aux scripts de démarage ?
Marsh Posté le 12-12-2003 à 11:07:25
PETOZAK a écrit : au fait il y avait des choses mais j'ai tout vire et j'ai meme essaye de compiler une JSP sans code Java et ca a pas marche c'est vraiment bizarre. |
pas de majuscules ds les noms de packages !
Marsh Posté le 12-12-2003 à 11:18:23
El_gringo a écrit : |
+1, mais c'est pas ca la cause de l'erreur ...
Marsh Posté le 12-12-2003 à 11:19:48
ReplyMarsh Posté le 12-12-2003 à 11:37:45
va jeter un oeil dans les logs de tomcat. il y a souvent des infos complémentaires.
logs dans <rep_de_tomcat>/logs
efface tout le contenu de ce rep, refait ton test et va voir localhost_log.<date_du_jour>.txt
Marsh Posté le 12-12-2003 à 11:40:43
Ils sont ou les scripts de demarrage?
et j'ai verifie sous JBuilder qu'a aucun moment je ne rajoute ant de toute facon c'est lui qui deploit ma WebApp!
ca marchait avant je comprend pas j'ai touche qu'a du HTML!
Marsh Posté le 12-12-2003 à 11:45:40
PETOZAK a écrit : Ils sont ou les scripts de demarrage? |
aha, faut tout dire...
Tu utilises donc jbuilder. Je parie que c'est lui qui utilise ant !!
Marsh Posté le 12-12-2003 à 11:47:52
PETOZAK a écrit : JBuilder |
problème résolu.
Marsh Posté le 12-12-2003 à 11:48:00
Du coup ton probleme est peut-être lié à un paramétrage de JB plutôt qu'à tomcat ou ton appli.
Marsh Posté le 12-12-2003 à 11:50:40
oui oui ant, c'est très bien. LE pbm ne vient pas de là.
Essaye de lancer ton appli sans utiliser JB.
Ferme JB.
Vide tes logs.
Lance tomcat avec le script <rep_tomcat>/bin/startup.bat
Fais ton test.
Regarde les logs.
Si ca fonctionne, c'est un pbm de paramétrage de JB.
Sinon, bah ça prouve rien
Marsh Posté le 12-12-2003 à 12:35:52
PETOZAK a écrit : et a aucun moment je ne vois Ant! |
T'espérais appercevoir une fourmis ?
Plus sérieusement, t'as pas à "voir" ant, y a pas d'interface de tte façon, c'est juste un interpréteur de scripts.
Marsh Posté le 12-12-2003 à 14:12:06
Pour ce qui est de la compilation des JSPs par Ant : à ma connaissance, il s'agit de compilation batch pour accélerer la première exécution des JSPs. Ant appelle Jasper.
Marsh Posté le 12-12-2003 à 14:28:23
tout a fait Ant ne fait qu'interpreterles scripts et les renvoyer par exemple a Jasper pour s'occuper des JSPs donc le pro ne peut pas venir de lui,non?
Marsh Posté le 12-12-2003 à 15:20:55
krosso a écrit : |
tomcat utilise ant, ca vient pas de jbuilder
Cherrytree a écrit : Pour ce qui est de la compilation des JSPs par Ant : à ma connaissance, il s'agit de compilation batch pour accélerer la première exécution des JSPs. Ant appelle Jasper. |
j'ai eu l'occasion de regarder le code de jasper et c'est jasper qui appelle Ant pour compiler les sources des servlets qu'il a généré à partir des jsp.
PETOZAK a écrit : tout a fait Ant interprete les scripts |
il ne me semble pas non ...
Marsh Posté le 12-12-2003 à 15:23:42
benou a écrit : |
tu connais ant toi maintenant?
(et il fait quoi d'apres toi? )
Marsh Posté le 12-12-2003 à 15:26:26
the real moins moins a écrit : |
je sais ce que c'est et à quoi il sers, mais c'est pas pour ca que je l'utilise ou que je sais le faire
pour ta question, comme je le disais au dessus, il est utilisé pour compiler les classes générées par jasper à partir des jsp
Marsh Posté le 12-12-2003 à 15:34:00
cela dit je vois pas pq tomcat passerais par ant. qu'il utilise un plugin d'ant passe encore, meme si je trouve ça douteux...
Marsh Posté le 12-12-2003 à 15:43:59
the real moins moins a écrit : cela dit je vois pas pq tomcat passerais par ant. qu'il utilise un plugin d'ant passe encore, meme si je trouve ça douteux... |
j'ai pas trop saisi l'intérêt non plus ...
A mon avis c'est une façon d'abstraire la compilation dynamique des classes qui est vraiment foireuse en java ...
Marsh Posté le 12-12-2003 à 15:48:19
y aurais pas bêtement un bout de code jsp qu'on ne voit pas dans son extrait et qui appelle ant ?
Marsh Posté le 12-12-2003 à 16:14:43
non promis j'ai meme une JSP vide qui ne passe plus au fait mes anciennes JSP marchent(elles ont du code en plus) au fait lr prob vient de la compilation!
Des que je modifie une JSP elle est recompilee et elle ne marche pas c'est zarb!
Marsh Posté le 12-12-2003 à 16:23:06
PETOZAK a écrit : non promis j'ai meme une JSP vide qui ne passe plus au fait mes anciennes JSP marchent(elles ont du code en plus) au fait lr prob vient de la compilation! |
t'as essayé sans JBuilder ? avec tomcat installé à côté ?
Marsh Posté le 12-12-2003 à 16:26:57
JBuilder et tomcat utilisent la même version du jdk ?
Fais le test dont je parle avant...
à moins que ton tomcat soit complétement intégré à JB ? (encore une fois, je ne connnais pas JB)
Marsh Posté le 12-12-2003 à 16:50:52
ca va vous paraitre niais mais j'ai jamais reussi a demarrer Tomcat en dehors de JB.
et puis je suis pas sur que la version de JDK pose probleme:
sinon JB lance TOMCAT comme suit:
D:\JBuilder8\jdk1.4\bin\javaw -classpath "D:\JBuilder8\thirdparty\jakarta-tomcat-4.1.12-LE-jdk14\bin\bootstrap.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\ejb (for production development only)\asynchronousmail.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\ejb (for production development only)\nativeverbhandler.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\activation.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\jcert.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\jnet.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\jsse.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\junit.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\log4j-1.2.3.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\mail.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\soap.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\velocity-1.1.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\xalan.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\xerces.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\util;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\util.jar;C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp\E-travel\third-party jars\DatePicker2.jar;d:\bea\weblogic700\server\lib\weblogic.jar;d:\bea\weblogic700\server\lib\webservices.jar;D:\JBuilder8\jdk1.4\lib\tools.jar" -Dcatalina.home="DJBuilder8/thirdparty/jakarta-tomcat-4.1.12-LE-jdk14" org.apache.catalina.startup.Bootstrap -config "C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\Tomcat\conf\server8080.xml" start
0 [main] INFO http11.Http11Protocol - Initializing Coyote HTTP/1.1 on port 8080
Starting service Tomcat-Standalone
Apache Tomcat/4.1.12-LE-jdk14
Marsh Posté le 12-12-2003 à 16:54:35
et pour les WebApploader:
WebappLoader[]: Deploying class repositories to work directory C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\Tomcat\work
WebappLoader[]: Reloading checks are enabled for this Context
StandardManager[]: Seeding random number generator class java.security.SecureRandom
StandardManager[]: Seeding of random number generator has been completed
HostConfig[localhost]: Deploying configuration descriptor jb-MyFirstJsp.xml
WebappLoader[/MyFirstJsp]: Deploying class repositories to work directory C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\Tomcat\work\MyFirstJsp
WebappLoader[/MyFirstJsp]: Deploy class files /WEB-INF/classes to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\classes
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/DatePicker2.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\DatePicker2.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/activation.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\activation.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/asynchronousmail.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\asynchronousmail.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/jcert.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\jcert.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/jnet.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\jnet.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/jsse.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\jsse.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/junit.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\junit.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/log4j-1.2.3.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\log4j-1.2.3.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/mail.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\mail.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/nativeverbhandler.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\nativeverbhandler.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/soap.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\soap.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/util.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\util.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/velocity-1.1.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\velocity-1.1.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/weblogic.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\weblogic.jar
WebappClassLoader: validateJarFile(C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\weblogic.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/webservices.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\webservices.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/xalan.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\xalan.jar
WebappLoader[/MyFirstJsp]: Deploy JAR /WEB-INF/lib/xerces.jar to C:\Documents and Settings\zbenzikrane\jbproject\MyProjectJsp2\MyFirstJsp\WEB-INF\lib\xerces.jar
WebappLoader[/MyFirstJsp]: Reloading checks are enabled for this Context
StandardManager[/MyFirstJsp]: Seeding random number generator class java.security.SecureRandom
StandardManager[/MyFirstJsp]: Seeding of random number generator has been completed
Marsh Posté le 12-12-2003 à 16:58:25
PETOZAK a écrit : ca va vous paraitre niais mais j'ai jamais reussi a demarrer Tomcat en dehors de JB. |
Marsh Posté le 12-12-2003 à 17:03:58
PETOZAK a écrit : ca va vous paraitre niais mais j'ai jamais reussi a demarrer Tomcat en dehors de JB. |
ben réessaye.
y a vraiment aucune difficultée quoi ...
Marsh Posté le 14-12-2003 à 08:29:04
benou a écrit : |
Je ne mets pas en doute ton propos, mais je reste sceptique. Il va falloir que je voies le code dudit Jasper, parce que là y a une couille dans le pâté.
Marsh Posté le 14-12-2003 à 08:31:12
benou a écrit : |
OK, présenté comme ça, je souscris. Mes croyances arrivent à intégrer cette nouvelle information sans trop de casse.
Marsh Posté le 14-12-2003 à 14:46:22
un petit extrait de la classe org.apache.jasper.compiler.Compiler
l'attribut project est de type org.apache.tools.ant.Project
Code :
|
Marsh Posté le 14-12-2003 à 14:51:39
Splendide.
Dire qu'à l'origine Tomcat était compilé par Ant, et maintenant il l'utilise aussi pour compiler les JSPs de ses webapps...
Marsh Posté le 15-12-2003 à 10:35:18
J'ai essaye de faire tourner mes JSPs chez moi(ma maison a moi) et chez mes collegues et ca marche:
je pense que ca vient de mon PC mais d'ou?
Marsh Posté le 15-12-2003 à 11:12:16
Cherrytree a écrit : Splendide. |
bin je vois pas où est le problème.
Marsh Posté le 11-12-2003 à 15:01:35
salut,
Voila,j'ai une jsp qui fait simplement une inclusion de page son code est:
<%@page import ="com.amadeus.dms.entreeSortie.*,java.util.*,ToUseBeans.*"%>
<body bgcolor="FFFBF1">
<%@include file="Flight_New.html"%>
<%@include file="LegFinal.html"%>
<%@include file="Comment3.htm"%>
</body>
J'ai modifier simplement LegFinal.html et ma jsp ne marche plus TOMCAT me renvoie une exception de l'espace qui n'a aucune source:
Le debut de exception est:
javax.servlet.ServletException: org.apache.tools.ant.taskdefs.Javac.setDebug(Z)V
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2396)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
le debut de root cause:
java.lang.NoSuchMethodError: org.apache.tools.ant.taskdefs.Javac.setDebug(Z)V
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:277)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:324)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:474)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:184)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:289)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
franchement je vois pas le probleme?