Class not found ! [JSP] - HTML/CSS - Programmation
Marsh Posté le 17-09-2002 à 10:52:41
donne un package à ta classe bordayl. C'est tout le temps la même rengaine. Tomcat ne sais pas importer des classes sont dans le package par défaut (à savoir pas de package du tout)
Marsh Posté le 17-09-2002 à 10:53:39
ceci dit tu peux parfaitement mixer les JSP avec les pages HTML (suivant config de ton serveur mais normallement tu ne devrais pas les mettre dans un rep spécial ou dédié)
Marsh Posté le 17-09-2002 à 10:55:53
DarkLord a écrit a écrit : donne un package à ta classe bordayl. C'est tout le temps la même rengaine. Tomcat ne sais pas importer des classes sont dans le package par défaut (à savoir pas de package du tout) |
Si il peut. Je l'ai deja fait, même si cai mal. Faut juste le mettre quand meme dans le import="..." de la jsp.
Marsh Posté le 17-09-2002 à 11:00:38
nan y peut pas. Une servlet ca va mais un bean ou un objet utilisé dans une JSP tu peux pas
(du moins avec les versions de tomcat que j'ai utilisé, ça a peut etre changé depuis la dernière version)
Marsh Posté le 17-09-2002 à 11:02:01
DarkLord a écrit a écrit : nan y peut pas. Une servlet ca va mais un bean ou un objet utilisé dans une JSP tu peux pas (du moins avec les versions de tomcat que j'ai utilisé, ça a peut etre changé depuis la dernière version) |
Si il peut !
Mais c'est vrai que j'ai pas essayé en 3.x. Ou alors j'ai pas fait expres.
Marsh Posté le 17-09-2002 à 11:03:03
C'était dans un package, j'ai changé car je croyais que ça venais de là.
Je viens de remettre "comme y faut" et ça change rien:
/var/tomcat4/work/Standalone/localhost/tracemq/tracemq$jsp.java:3: Class Tracemq.RequestHandler not found in import. |
avec les fichier suivants:
/web-apps/tracemq/WEB-INF/classes/RequestHandler.java
package Tracemq; |
/web-apps/tracemq/tracemq.jsp
<%@ page language="java"%> |
Marsh Posté le 17-09-2002 à 11:04:24
DarkLord a écrit a écrit : ceci dit tu peux parfaitement mixer les JSP avec les pages HTML (suivant config de ton serveur mais normallement tu ne devrais pas les mettre dans un rep spécial ou dédié) |
C'est juste pour que ce soit plus propre:
Le html "pur" dans un coin, les jsp avec la logique dans l'autre.
Marsh Posté le 17-09-2002 à 11:04:52
Mog a écrit a écrit : avec les fichier suivants: /web-apps/tracemq/WEB-INF/classes/RequestHandler.java
|
Oh putain !
Tu te rends compte de ce que tu viens d'écrire ?
Marsh Posté le 17-09-2002 à 11:06:11
Euh ... a voir le ton utilisé, j'ai dû faire un couille !
Marsh Posté le 17-09-2002 à 11:09:14
benou a écrit a écrit : pa de majuscule dans le nom des package ! |
Encore que ca c'est une convention, c'est pas ca qui fait que ca marche pas.
Marsh Posté le 17-09-2002 à 11:09:51
Mog a écrit a écrit : Euh ... a voir le ton utilisé, j'ai dû faire un couille ! |
Oui. Dans l'arborescence des fichiers faut respecter l'arborescence des paquets...
Marsh Posté le 17-09-2002 à 11:11:32
Mog a écrit a écrit : En tout cas, ça change rien ! |
oui mais faut pas
Marsh Posté le 17-09-2002 à 11:12:10
DarkLord<
/WEB-INF/classes/Toto.class
Code :
|
/toto.jsp
Code :
|
et ca marche très bien (Tomcat 4.03, j2sdk1.4.0)
Marsh Posté le 17-09-2002 à 11:13:05
allez, essaye comme ca :
/web-apps/tracemq/WEB-INF/classes/[#e21c00]tracemq/[/#e21c00]RequestHandler.java |
Code :
|
Marsh Posté le 17-09-2002 à 11:18:17
/var/tomcat4/work/Standalone/localhost/tracemq/toto$jsp.java:3: Class Toto not found in import. |
Je dois avoir un pb de config du server !
Marsh Posté le 17-09-2002 à 11:20:27
Mog a écrit a écrit :
|
ou bien tu dois pas savoir faire un package ...
Marsh Posté le 17-09-2002 à 11:21:24
Mog a écrit a écrit :
|
C'est quoi ca ? T'as repris mon truc ? C'était juste pour montrer a darklord... La la classe est dans le repertoire tracemq mais pas dans le paquet si c'est ce que je crois. Reprends le truc de benou plutot.
Marsh Posté le 17-09-2002 à 11:28:53
Pour récapituler:
.: |
tracemq.jsp
<%@ page language="java"%> |
RequestHandler.java
package tracemq; |
Et ça marche toujours pas ! Y'a rien à configurer dans server.xml ? (à part ajouter un nouveau context tracemq)
Marsh Posté le 17-09-2002 à 11:30:22
Mog a écrit a écrit : C'était dans un package, j'ai changé car je croyais que ça venais de là. Je viens de remettre "comme y faut" et ça change rien:
|
bin c'est normal. Déjà classes c'est pour les .class, pas pour les point Java. Et de deux il va avoir du mal à compiler ta classe meme si il pouvait puisque tu l'as mis dans le package par défaut, or la source le déclare dans le pacakge tracemq.
Donc tu dois compiler et mettre le .class dans
/web-apps/tracemq/WEB-INF/classes/tracemq/RequestHandler.class
Marsh Posté le 17-09-2002 à 11:31:15
lorill a écrit a écrit : DarkLord< /WEB-INF/classes/Toto.class
|
Essaie d'en faire un bean avec <jsp:useBean ....
Marsh Posté le 17-09-2002 à 11:34:49
<%@ page import="Toto" %> |
Toto not found
Marsh Posté le 17-09-2002 à 11:36:06
ca s'addressait à lorill pas à toi. Déjà qu'il trouve pas la classse chez toi c'est normal que useBean ne fonctionne pas non plus.
Ceci dit que raconte les logs de ton tomcat?
Marsh Posté le 17-09-2002 à 11:41:23
Toujours la même chose:
org.apache.jasper.JasperException: Unable to compile class for JSPNote: sun.tools.javac.Main has been deprecated. |
Marsh Posté le 17-09-2002 à 11:42:17
toi tu as un vieux JDK qui trane dans ton path
en ligne de commande fais un peu
Code :
|
Marsh Posté le 17-09-2002 à 11:45:56
ben non:
java -version |
Marsh Posté le 17-09-2002 à 11:47:18
Mais heu, ta classe, y faudrait pas la compiler avant ? Et redémarrer Tomcat ensuite ?
Marsh Posté le 17-09-2002 à 12:02:41
R3g a écrit a écrit : Mais heu, ta classe, y faudrait pas la compiler avant ? Et redémarrer Tomcat ensuite ? |
AAARARRARRARRRAGGGGG c'était ça, faut le redémmarrer à chaque fois !
Merci beaucoup, je m'en vais me flageller avec des orties frais en courant nu dans les champs.
Marsh Posté le 17-09-2002 à 12:09:09
Marsh Posté le 17-09-2002 à 12:14:18
Mog a écrit a écrit : ben non:
|
Vade retro satanas il a JDK 1.4
Marsh Posté le 17-09-2002 à 12:14:38
lorill j'attends le useBean ...
Marsh Posté le 17-09-2002 à 12:33:09
DarkLord a écrit a écrit : lorill j'attends le useBean ... |
Désolé j'étais parti manger... Mais tu vas être deçu, ca marche aussi (alors que ca j'en étais pas sur)
/WEB-INF/classes/Toto.class
Code :
|
/toto.jsp
Code :
|
Et ca marche. tadaaaaa
Marsh Posté le 17-09-2002 à 12:34:12
pour ne pas avoir a redemarrer trop souvent, un ptit reloadable=true dans la section correspondante a ta webapp dans le fichier de conf de tomcat ca peut aider
attention cependant, ca marche pas a tous les coups je crois
Marsh Posté le 17-09-2002 à 12:40:36
lorill a écrit a écrit : Et ca marche. tadaaaaa |
note tant mieux mais bon ...
Marsh Posté le 17-09-2002 à 12:41:54
DarkLord a écrit a écrit : note tant mieux mais bon ... |
T'inquiete, je sais que c'est pas terrible, j'aime bien avoir des espaces de noms relativements propres.
Marsh Posté le 17-09-2002 à 12:58:39
pq ce topic n'est pas dans la categorie java?
c'est inadmissable
que fait le modo
Marsh Posté le 17-09-2002 à 12:58:54
ouais
Marsh Posté le 17-09-2002 à 12:59:01
a mort antp!
Marsh Posté le 17-09-2002 à 10:09:43
Quelle est l'arborescence à respecter pour dans le répertoire web-apps ?
web-apps/monprojet/ -> index.html
web-apps/monprojet/jsp -> *.jsp
web-apps/monprojet/WEB-INF/classes -> *.java *.class
Je me suis basé sur l'exemple fournis avec tomcat et si dans un de mes fichier jsp je fait appel à une de mes classes, j'ai droit à cette erreur:
/var/tomcat4/work/Standalone/localhost/tracemq/tracemq$jsp.java:3: Class RequestHandler not found in import.
import RequestHandler;
Même en mettant les *.class dans le même répertoire que le .jsp, ça ne marche pas.
Quel est le soucis ?
CLASS_PATH=.:/opt/j2sdk1.4.0_01/lib
pout user tomcat4
Message édité par mog le 17-09-2002 à 10:11:36