Bonjour,
je suis débutant en J2EE et j'ai réussi à faire des jsp et des beans avec connections à une BDD via une datasource déclarée dans mon appli.xml :
Je voudrais utiliser ce fichier de conf pour pour répondre aux requêtes des clients Web via Tomcat, mais aussi lancer une appli java (avec un main() ) via un cron toutes les heures par exemple.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 <?xml version="1.0" encoding="UTF-8"?> <Context path="/ws2350" reloadable="true" docBase="D:\Projet Station Météo\Interface JAVA\Workspace Eclipse\ws2350" workDir="D:\Projet Station Météo\Interface JAVA\Workspace Eclipse\ws2350\work" > <Logger className="org.apache.catalina.logger.SystemOutLogger" verbosity="4" timestamp="true"/> <Realm className="org.apache.catalina.realm.JDBCRealm" connectionName="root" connectionPassword="xxx" connectionURL="jdbc:mysql://localhost/open2300" driverName="com.mysql.jdbc.Driver" roleNameCol="role_name" userCredCol="user_pass" userNameCol="user_name" userRoleTable="user_roles" userTable="users"/> <Resource name="jdbc/open2300" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" maxIdle="2" maxWait="5000" validationQuery="select 1" username="root" password="xxx" url="jdbc:mysql://localhost/open2300" maxActive="4"/> </Context>
J'ai donc créé ma classe, mais dès que je cherche à récupérer ma connection,
je plante :
Exception in thread "main" javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.rebind(Unknown Source)
at anthropo.station.meteo.affichage.ServletWindRose.createChart(ServletWindRose.java:71)
at anthropo.station.meteo.affichage.ServletWindRose.main(ServletWindRose.java:256)
J'ai essayé plein de choses glanées ci ou là sur le net.
Mais rien n'a fonctionné. comment récupérer le contexte ?
MERCI D'AVANCE - JE CRAQUE !!!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 //Main code for creating charts public static void createChart(String date1, String date2, String titre) throws NamingException { InitialContext envCtx = new InitialContext(); DataSource ds = (DataSource)envCtx.lookup("java:comp/env/jdbc/open2300"); Connection con=null; Statement s=null; ResultSet rs=null; .../...
Partager