Java - Mise en place d'une api (Servlet)

Java - Mise en place d'une api (Servlet) - Programmation

Marsh Posté le 09-04-2002 à 09:31:05    

c débile comme pb, ms bon, tant pis. J'assume.
En fait, g téléchargé l'api servlet22. Dans le .zip que g téléchargé, y a juste servlet.jar
alors, je me suis dis qu'il suffit que je l'ajoute aux autres .jar qui contiennent l'api du jdk1.4, à l'endroit ou il est installé le sur ma machine. Mais je vois pas où sont ces .jar, c con hein ?
enfin, apparement, y a des .jar que dans le sous répertoire lib...
Mais du coup, une autre question me vient:  
quand on fait l'import d'un package en java, à quel endroit va chercher la machine vitruelle, comment trouve elle le jar qui contient la package ou la classe à importer ?

Reply

Marsh Posté le 09-04-2002 à 09:31:05   

Reply

Marsh Posté le 09-04-2002 à 09:34:58    

hoo... j'crois que g trouvé...
En fait, c pas un jar qui contient les classes du langage Java, c'est le src.zip qui est à la racine du JDK.
Par contre ma 2e question reste la même.
A moins que... 'faut ajouter c:\jds1.4 à ma variable systeme classpath ?

Reply

Marsh Posté le 09-04-2002 à 09:35:51    

et du coup, mon servlet.jar, je le met à quel endrtoi dans tout ça, pour pouvoir utiliser les classes qu'il contient ?

Reply

Marsh Posté le 09-04-2002 à 09:38:53    

Donc ...
 
src.jar contient les sources du JDK. Ce n'est pas du tout utilisé par la JVM.
 
Lorsque tu décides d'utiliser une libraire quelconque, tu dois ajouter cette librairie à ta variable classpath. Donc dans ce cas servlet.jar.  
 
Tu le mets ou tu veux (par exemple c:\java\lib). Ensuite tu dois ajouter le chemin COMPLET dans le cas d'un jar. Lorsque ce sont des classes tu dois ajouter le répertoire root des classes
 
donc dans ton cas tu dois ajouter un truc du genre
 
SET CLASSPATH=c:\java\lib\servlet.jar;%CLASSPATH% (9x)
En NT tu peux accéder aux variables d'environnement dans les propriétés de my computer.
 
A+

 

[jfdsdjhfuetppo]--Message édité par DarkLord--[/jfdsdjhfuetppo]


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-04-2002 à 09:43:59    

Dans le classpath, tu met :  
* soit des répertoires qui contiennent des classes  
Par exemple, si tu as une architecture de dev de la forme :  
 
toto/src
toto/class
 
pour accéder aux classes dans toto/class, tu dois ajouter toto/class dans ton classpath
 
* soit des fichiers .jar
Donc, il faut que dans ton classpath, tu aies :  
 
...;/ton/chemin/servlet.jar;....
 
voilà..

Reply

Marsh Posté le 09-04-2002 à 09:45:08    

grilled :D


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-04-2002 à 09:53:26    

et le CLASSPATH, vu qu'il est règlé sous dos (je suis ss Win98), dans mon .bat, j'imagine qu'il faut que je mette les noms courts de chemins. syle:
SET CLASSPATH=c:\j2sdk1~1\lib\servlet.jar
et non pas:
SET CLASSPATH=c:\j2sdk1.4.0\lib\servlet.jar
non ?
(et merci à vs 2 pour le renseignement d'avant)

 

[jfdsdjhfuetppo]--Message édité par El_Gringo--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 09-04-2002 à 09:57:10    

El_Gringo a écrit a écrit :

et le CLASSPATH, vu qu'il est règlé sous dos (je suis ss Win98), dans mon .bat, j'imagine qu'il faut que je mette les noms courts de chemins. syle:
SET CLASSPATH=c:\j2sdk1~1\lib\servlet.jar
et non pas:
SET CLASSPATH=c:\j2sdk1.4.0\lib\servlet.jar
non ?
(et merci à vs 2 pour le renseignement d'avant)  




 
nan nan, si va passer sans les ~1 ... par contre, si tu as des espaces, tu devras entourer le path par des guillements.

Reply

Marsh Posté le 09-04-2002 à 10:06:18    

DarkLord a écrit a écrit :

grilled :D  




 
Vilain darklord! :p

Reply

Marsh Posté le 09-04-2002 à 10:13:00    

benou a écrit a écrit :

 
 
nan nan, si va passer sans les ~1 ... par contre, si tu as des espaces, tu devras entourer le path par des guillements.  




 
merci...

Reply

Marsh Posté le 09-04-2002 à 10:13:00   

Reply

Marsh Posté le 09-04-2002 à 10:13:37    

gfive a écrit a écrit :

 
 
Vilain darklord! :p  




 
allons allons, vous battez pas Darklord et gFive, vous êtes fort tous les 2 ! :D

Reply

Marsh Posté le 09-04-2002 à 12:20:13    

ms j'y pense. Une fois que g fait mon
SET CLASSPATH=c:\j2sdk1.4.0\lib\servlet.jar
pour importer un package ou une classe dans une classe à moi, je fais comment ?
import servlet.ServletHttp;
par exemple, c ça !? ou alors je doit qd même allez dans javax (je vois pas pourquoi ms bon...)

Reply

Marsh Posté le 09-04-2002 à 12:22:39    

bin ca n'a rien à voir ! Le pacakge est identifié par javax.servlet.*  
 
Ce n'est pas parce que tu l'ajoutes dans ton classpath que son id change. Suppose maintenant que tu as deux implémentation de servelt
 
javax.servlet.*
et  
 
org.concurence.servlet.*
 
avec ton système comment différencier les deux si tu les utilises en meme temps.
 
Les noms de packages en Java ont été spécialement définis pour éviter ce genre de problème
 
--> rien à voir tu es dans les choux!


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-04-2002 à 12:23:31    

donc pour répondre à ta question tu fais comme n'importe quelle classe standard
 
import javax.servlet.http.HttpServletRequest;
 
import org.mycompany.mylib.*;
 
etc ..


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-04-2002 à 12:24:56    

DarkLord a écrit a écrit :

bin ca n'a rien à voir ! Le pacakge est identifié par javax.servlet.*  
 
Ce n'est pas parce que tu l'ajoutes dans ton classpath que son id change. Suppose maintenant que tu as deux implémentation de servelt
 
javax.servlet.*
et  
 
org.concurence.servlet.*
 
avec ton système comment différencier les deux si tu les utilises en meme temps.
 
Les noms de packages en Java ont été spécialement définis pour éviter ce genre de problème
 
--> rien à voir tu es dans les choux!  




 
Je sais bien que je suis dans les choux. c cruel de me le répéter.
Ms merci qd même...

 

[jfdsdjhfuetppo]--Message édité par El_Gringo--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 09-04-2002 à 12:28:36    

El_Gringo a écrit a écrit :

 
 
Je sais bien que je suis dans les choux. c cruel de me le répéter.
Ms merci qd même...  




 
avec plaisir :D
 
 :p


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-04-2002 à 13:13:56    

Euh au passage vu que je reviens a la vie apres pres de 3 semaines :
 
Sauf erreur, tout ce qui est dans le repertoire lib de la JDK ne doit pas etre ajoute au classpath : c'est la premiere place ou va chercher la jdk pour trouver les classes et properties files et ceci quel que soit le classpath.
 
Ciao

Reply

Marsh Posté le 09-04-2002 à 13:28:10    

Kahyman a écrit a écrit :

Euh au passage vu que je reviens a la vie apres pres de 3 semaines :
 
Sauf erreur, tout ce qui est dans le repertoire lib de la JDK ne doit pas etre ajoute au classpath : c'est la premiere place ou va chercher la jdk pour trouver les classes et properties files et ceci quel que soit le classpath.
 
Ciao  




 
Yes mais j'évite perso de mettre des libs là bas (surtout qd tu travailles sur une base de projets distincts. Même ca peut merder si tomcat va chercher le jar là et compagnie.
 
Donc oui ca marche mais à éviter je pense, surtout lorsque tu travailles en projet (plusieurs projet sur le meme profile).
 
A+


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-04-2002 à 13:51:12    

El_Gringo a écrit a écrit :

ms j'y pense. Une fois que g fait mon
SET CLASSPATH=c:\j2sdk1.4.0\lib\servlet.jar




surtout pas malheureux !!!
la tu écrases ton ancien classpath
 
SET CLASSPATH=%CLASSPATH%;c:\j2sdk1.4.0\lib\servlet.jar

Reply

Marsh Posté le 09-04-2002 à 13:52:25    

benou a écrit a écrit :

 
surtout pas malheureux !!!
la tu écrases ton ancien classpath
 
SET CLASSPATH=%CLASSPATH%;c:\j2sdk1.4.0\lib\servlet.jar  




 
 :jap: et pourtant je l'avais déjà mentionné


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-04-2002 à 13:58:39    

benou a écrit a écrit :

 
surtout pas malheureux !!!
la tu écrases ton ancien classpath
 
SET CLASSPATH=%CLASSPATH%;c:\j2sdk1.4.0\lib\servlet.jar  




 
Oui oui, je sais, y a aussi les autres chemin ds mon SET CLASSPATH, c'était juste pour montrer.
D'ailleur ça correspond à quoi le %CLASSPATH% ?

Reply

Marsh Posté le 09-04-2002 à 14:01:15    

El_Gringo a écrit a écrit :

 
 
Oui oui, je sais, y a aussi les autres chemin ds mon SET CLASSPATH, c'était juste pour montrer.
D'ailleur ça correspond à quoi le %CLASSPATH% ?  




 
A la valeur  courant de ton classpath.
 
Donc si tu fais SET CLASSPATH=A
 
et puis plus loin dans autoexec.bat
 
SET CLASSPATH=%CLASSPATH%;B
 
tu auras en fait dans ton classpath A;B
 
ca évite de tout retaper qd tu dois ajouter un truc


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-04-2002 à 14:02:30    

El_Gringo a écrit a écrit :

 
 ça correspond à quoi le %CLASSPATH% ?  




ben c'est la valeur de la variable CLASSPATH

Reply

Marsh Posté le 09-04-2002 à 14:03:59    

grilled :D


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-04-2002 à 14:06:26    

DarkLord a écrit a écrit :

grilled :D  




 
Je vous dit, moi, c'est rien qu'un méchant, ce darklord!! Il reloades la page toutes les secondes pour griller les gens, et ça fait baisser les courbes de la rpoductivité dans sa boite, et après Enron fait faillite, tout ça!!  
 
'tain, merde alors!! :D

Reply

Marsh Posté le 09-04-2002 à 14:09:29    

DarkLord a écrit a écrit :

grilled :D  




GRRRRR

Reply

Marsh Posté le 09-04-2002 à 14:13:50    

gfive a écrit a écrit :

 
 
Je vous dit, moi, c'est rien qu'un méchant, ce darklord!! Il reloades la page toutes les secondes pour griller les gens, et ça fait baisser les courbes de la rpoductivité dans sa boite, et après Enron fait faillite, tout ça!!  




 
Bin non figure toi. C'est mon chef qui est méchant. Il s'occupe de tout le monde sauf de moi. Résultat des courses. Le service est up depuis 32 heures now et j'attends un réplica de la BD de prod pour voir si tout tourne correctement.
 
En attendant j'essaie d'écrire des documents à la con pour m'occuper mais sans grande conviction. Et visiblement comme mon projet à avancer plus que les autres bin je suis sur le coté pour l'instant.
 
Mais ca m'énerve je préfererai avoir plus de boulot à choisir.
 
A+


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-04-2002 à 14:14:00    

benou a écrit a écrit :

 
GRRRRR  




 
 :lol:  :p


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 09-04-2002 à 14:15:06    

DarkLord a écrit a écrit :

 
 :lol:  :p  




l'homme qui poste plus vite que son ombre !

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed