fredsor
Messages postés198Date d'inscriptionlundi 24 avril 2006StatutMembreDernière intervention 3 avril 2008
-
12 juil. 2007 à 10:03
fredsor
Messages postés198Date d'inscriptionlundi 24 avril 2006StatutMembreDernière intervention 3 avril 2008
-
12 juil. 2007 à 18:58
Bonjour,
je réalise un application en C dans laquelle je me connecte a un serveur distant, afin de récupérer des données sur une servlet codée en Java via des requete http basiques...
Jusque là rien d'extraordinaire
Cependant maintenant que coté client le C est terminé, on me demande de modifier la servlet afin de faire des enchainement d'ecrans...
D'où ma question : ma servlet ( le fichier TEST.class) se trouve dans un repertoire donné de mon serveur distant. Comment dois-je procédé pour pouvoir la modifier?
Dois-je simplement récupérer le fichier TEST.java, faire mes modif', puis compiler. Et enfin avec le nouveau TEST.class que j'obtindrais, je remplace l'existant par le nouveau?
Cela fonctionne-t-il aussi simplement ou y-aura-t-il d'autres modifs à faire?
Merci à vous
( de plus, n'ayant que le fichier TEST.java a priori a modifier, quel compilateur me conseiller vous sous Windows XP? un simple javac devrais suffire?)
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 12 juil. 2007 à 10:34
Salut,
normalement ou il te suffit simplement de remplacer l'ancien .class par le nouveau...
Concernant le compilateur tu fais du java donc seul le jdk de sun suffit et ta compilation ne peut se faire avec autre chose que javac sauf si tu fais un java hybride (java sauf crosoft)
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
fredsor
Messages postés198Date d'inscriptionlundi 24 avril 2006StatutMembreDernière intervention 3 avril 2008 12 juil. 2007 à 17:19
Plus qu'une erreur, mais la je seche!! ( je re signale que c'est une servlet qui a déjà été compilé sur le serveur distant, elle doit donc en théroie bien compiler... Je teste la compilation de mon côté pour pouvoir la modifier par la suite en toute sérénité! ^^)
Donc voilou, il me reste ça :
PDA_New.java:32: cannot find symbol
symbol : method init();
location : clas java.lang.Object
super.init();
^
public class PDA_New
{
public PDA_New(){
}
public void doPost(javax.servlet.http.HttpServletRequest req,javax.servlet.http.HttpServletResponse resp)throws javax.servlet.ServletException, java.io.IOException {
String retour = "";
try {
retour = litFichier();
resp.getWriter().print(retour);
resp.getWriter().close();
}
catch(java.lang.Exception exception) { }
}
public void init()
throws javax.servlet.ServletException
{
super.init();
}
private String litFichier() {
String valRet = "";
try {
String cheminTp = "/tmp/PDA_New_retour.txt";
File f = new File(cheminTp);
if (f.length() > 0) {
BufferedReader in = new BufferedReader(new FileReader(cheminTp));
valRet = in.readLine();
in.close();
}
} catch (Exception e) {
}
return valRet;
}
}
Voila, si quelqu'un a une idée, j'en aurais terminé avec ces problemes...
Merci beaucoup!!
Pour info, la résolution aux autres problemes venaient qu'il falalit le classpath pour compiler :
javac -classpath "chemindujar:servlet.jar" PDA_NEW.java
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 201212 12 juil. 2007 à 10:34
le compilateur de sun est largement suffisant... et quelque soit l OS... il te suffit donc de compiler ton .java pour obtenir ton .class qui remplacera le fichier actuel ....
GodConan ;o)
Vous n’avez pas trouvé la réponse que vous recherchez ?
fredsor
Messages postés198Date d'inscriptionlundi 24 avril 2006StatutMembreDernière intervention 3 avril 2008 12 juil. 2007 à 10:47
Ouah la rapidité
Donc oui je vais tenter ca. J'ai telecharger la jdk de sun, mais j'ai pris la 1.4.2, or pour qu'elle fonctionne avec Apache Tomcat, me faut la 5.0 non? je vais voir pour la télécharger.
Et sinon, je possède les jar pour APache, commet pourrais-je les "intégrer" à mon javac pour ne pas avoir d'erreurs a la compilation?
Merci beaucoup!
fredsor
Messages postés198Date d'inscriptionlundi 24 avril 2006StatutMembreDernière intervention 3 avril 2008 12 juil. 2007 à 12:17
Ok je telecharge le J2EE sdk 1.4 là
mais ensuite les lib d'apache seront deja integrées? devrais-je faire quelque chose a la main?
ce JDEE sdk comportera bien une option "javac"
sheorogath
Messages postés2448Date d'inscriptionsamedi 21 février 2004StatutModérateurDernière intervention29 janvier 201017 12 juil. 2007 à 14:49
le plus recent c'est pas forcement un bon plan ... faut que tu prenne la meme version que le java d'installe sur la machine ...
le JEE == (JDK + LIB )
avec LIB == javax.mail , ejb etc ....
"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
fredsor
Messages postés198Date d'inscriptionlundi 24 avril 2006StatutMembreDernière intervention 3 avril 2008 12 juil. 2007 à 15:39
Ok donc j'ai installé le J2EE,
ensuite dans cmd, je fais "cheminJ2EE\bin\javac.exe" PDA_New.java
et j'obtiens toujours 5 erreurs, dont 3 identiques.
Les voici :
C:\Documents and Settings\PC_STG\Bureau\RECUP\Recup Winscp>"c:\Sun\AppServer\jdk
\bin\javac.exe" PDA_New.java
PDA_New.java:10: cannot access javax.servlet.http.HttpServlet
file javax\servlet\http\HttpServlet.class not found
public class PDA_New extends gencdf.mobile.servlet.PDA_Config
^
PDA_New.java:16: package javax.servlet.http does not exist
public void doPost(javax.servlet.http.HttpServletRequest req, javax.serv
let.http.HttpServletResponse resp)
^
PDA_New.java:16: package javax.servlet.http does not exist
public void doPost(javax.servlet.http.HttpServletRequest req, javax.serv
let.http.HttpServletResponse resp)
^
PDA_New.java:17: package javax.servlet does not exist
throws javax.servlet.ServletException, java.io.IOException
^
PDA_New.java:32: cannot find symbol
symbol : variable super
location: class gencdf.mobile.servlet.PDA_New
super.init();
^
5 errors
Donc voila, il me semble que 4 erreurs sont dûes au fait qu'il ne trouve pas les lib Apache ( j'ai récupéré un tomcat également, essayé de changé les classpath mais je dois mal m'y prendre...)
et la derniere je ne comprends pas pourquoi elle ne passe pas...
cs_GodConan
Messages postés2113Date d'inscriptionsamedi 8 novembre 2003StatutContributeurDernière intervention 6 octobre 201212 12 juil. 2007 à 18:03
je ne connai pas de methode init à Object le super.init() me semble plus que douteux
soit il y avait un extend à la class soit la ligne est en trop ...
fredsor
Messages postés198Date d'inscriptionlundi 24 avril 2006StatutMembreDernière intervention 3 avril 2008 12 juil. 2007 à 18:58
Oui en effet, j'avais bien un extends qui me faisait une autre erreur. et le init() dans ce cas me donne une erreur relative à cet extends.
donc au final je pense soit rajouter le extends et peut etrre arriver a retablir le lien avec la classe à laquelle il fait référence, soit je vire le init(), qui ne doit pas avoir tant d'incidence que cela...
Quoi qu'il en soit, merci a tous pour votre aide, je vais mettre en résolu cequi m'a paru le plus utile
Bonne soirée, et vive le java!