Appel de class en JAVA ds un package Tomcat 4.1.30

coyote_fx Messages postés 55 Date d'inscription mardi 13 janvier 2004 Statut Membre Dernière intervention 18 juillet 2006 - 12 mai 2004 à 23:50
otherseb777 Messages postés 1 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 8 juillet 2005 - 8 juil. 2005 à 00:48
Bonjour à tous bien voilà j'ai encore des problèmes.
Non non ne me zappé pas.

J'ai toujours des problème pour importer java.

Voilà ma page JSP fait appel à une classe java qui a pour objectif de se connecter à la db (SQL Server 200). je n'arrive pas à la compiler. Elle fait elle même appel à une autre classe se trouvant dans le m^me pakage, lors de la compilation cette deuxième classe ( outil_db) n'est pas trouvée !!!

Merci à tout ceux qui pouront m'aider

Coyote

Ps: sous éclips ces mêmes classes fontionnent à merveille !!!

-------------------------
Ma page JSP :




Création d'un nouveau WAN













Création Wan,

----

Nom du WAN,
,

----

Locatisation,











---------------------------------------------
Class base_db du package basedb:

package basedb;

import java.sql.*;
import basedb.*;

public class base_db
{
private Driver pilote=null;
private Connection connect=null;
private ResultSet rs=null;
private Statement statm=null;

public base_db(){}

public void dbConnect() throws Exception
{
pilote=(Driver)
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
connect = DriverManager.getConnection("jdbc:odbc:Nettrafic_db");
}

public boolean selectWan(long id) throws Exception
{
String requete ="SELECT NOM_WAN,LOCAL_WAN FROM WAN WHERE ID_WAN='1';";
statm=connect.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE , ResultSet.CONCUR_UPDATABLE);

rs=statm.executeQuery(requete);
boolean resulta =false;
boolean first=rs.first();
if (first=rs.first())
{
resulta =true;
System.out.println("test11");
}
System.out.println("test12");
return(resulta);

}

public boolean insertWan(long id,String nomWan, String localWan) throws Exception
{
outil_db cottes;
cottes =new outil_db();
String requete ="INSERT INTO WAN (NOM_WAN,LOCAL_WAN) VALUES ('"+cottes.secuSql(nomWan)+"','"+cottes.secuSql(localWan)+"');";
//(ID_WAN,NOM_WAN,LOCAL_WAN)
statm=connect.createStatement();
int intinsetrt=statm.executeUpdate(requete);

System.out.println(requete);
boolean resulta =true;
return(resulta);
}

public String getElement(String nomColonne) throws Exception
{
String nom = rs.getString(nomColonne);
return(nom);
}

public void dbClose() throws Exception
{
statm.close();
connect.close();
}
}

--------------------------------------------------------------
La class outil_db du package basedb qui a pour but de doubler les ' en '' avant l'insertion de variables dans un insert SQL :

package basedb;

public class outil_db
{
public outil_db()
{

}

public String secuSql(String str)
{
StringBuffer chaine= new StringBuffer (str);
int lenChaine=chaine.length();
int i=0;
char r='\'';
Character ev_char;
Character str_char;
ev_char= new Character(r);

while (i

4 réponses

HFanny Messages postés 699 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 13 mai 2011 20
13 mai 2004 à 08:55
Bonjour,

il faut que tu compiles tes classes en faisant :
javac *.java
pour compiler les 2 en même temps (je viens de tester en copiant ton code et ça fonctionne).

Par ailleurs, je te conseille de mettre (c'est la norme Java) la première lettre des noms de classe en majuscule et de renommer le fichier de la même façon :

fichier BaseDb.java
public class BaseDB{ }

C'est juste pour que tu sois dans la même norme que Java :)
Voilà,

Fanny
0
coyote_fx Messages postés 55 Date d'inscription mardi 13 janvier 2004 Statut Membre Dernière intervention 18 juillet 2006
14 mai 2004 à 16:42
Merci Fanny !!! ,
ca marche Maintenant que j'ai mis des majuscules.
Dés que j'ai bouclé mon mémoire (fin Aout) je tenvois des fleurs !!! ;-)

Et c'est pas des blagues, il faudra que tu m'envois ton adresse.
0
HFanny Messages postés 699 Date d'inscription mercredi 19 février 2003 Statut Membre Dernière intervention 13 mai 2011 20
17 mai 2004 à 11:40
Hihi :) ,

le principal, c'est que tu t'en sortes ;) .
Surtout que là, ce n'était pas une erreur de programmation mais de non respect de la norme Java.
C'est juste une habitude à prendre.

Bonne chance pour ton mémoire !!

Fanny
0
otherseb777 Messages postés 1 Date d'inscription vendredi 8 juillet 2005 Statut Membre Dernière intervention 8 juillet 2005
8 juil. 2005 à 00:48
Hello,

J'ai le même type d'architecture que toi et un problème similaire dont la solution n'est malheureusement pas les majuscules ...


Voilà en fait mon pbm est certainement du à la configuration du classpath, j'ai vu que tomcat avait son propre classpath, comment le configure-t-on ?


Voilà mon erreur :

org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: 28 in the jsp file: /il2005/web/index.jsp

Generated servlet error:
[javac] Compiling 1 source file

C:\jakarta-tomcat-4.1.31\work\Standalone\localhost\_\il2005\web\index_jsp.java:7: package connection does not exist
import connection.*;
^
C:\jakarta-tomcat-4.1.31\work\Standalone\localhost\_\il2005\web\index_jsp.java:68: cannot resolve symbol
symbol : class Connect
location: class org.apache.jsp.index_jsp
Connect conn = new Connect();
^



An error occurred at line: 28 in the jsp file: /il2005/web/index.jsp

Generated servlet error:
C:\jakarta-tomcat-4.1.31\work\Standalone\localhost\_\il2005\web\index_jsp.java:68: cannot resolve symbol
symbol : class Connect
location: class org.apache.jsp.index_jsp
Connect conn = new Connect();
^



An error occurred at line: 28 in the jsp file: /il2005/web/index.jsp

Generated servlet error:
C:\jakarta-tomcat-4.1.31\work\Standalone\localhost\_\il2005\web\index_jsp.java:70: cannot resolve symbol
symbol : class ResultSet
location: class org.apache.jsp.index_jsp
ResultSet SQLResult = conn.executeQuery(Query);
^



An error occurred at line: 143 in the jsp file: /il2005/web/index.jsp

Generated servlet error:
C:\jakarta-tomcat-4.1.31\work\Standalone\localhost\_\il2005\web\index_jsp.java:237: cannot resolve symbol
symbol : variable SQLStatement
location: class org.apache.jsp.index_jsp
SQLStatement.close();
^
5 errors


at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:85)
at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:248)
at org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:315)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:328)
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:427)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:142)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:200)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:146)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:209)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:144)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:118)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683)

at java.lang.Thread.run(Thread.java:534)

Merci d'avance,
Seb
0
Rejoignez-nous