[tomcat 4.1] [oracle] Pool de connexion
Bonjour,
J'ai créer une servlet pour tester mon pool de connexion avec oracle. Le pool est gerer par tomcat par un fichier de configuration specifique :
maquette.xml
Code:
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 28 29 30 31 32 33
| <Context path = "/maquette" docbase="maquette" debug="0" reloadable="true">
<Resource name="jdbc/maquette" auth="Container" type="javax.sql.DataSource" />
<ResourceParams name="jdbc/maquette">
<parameter>
<name>user</name>
<value>PGC</value>
</parameter>
<parameter>
<name>password</name>
<value>PGC</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@127.0.0.1:1521:PGC</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
</ResourceParams>
</Context> |
ma servlet est la suivante:
Code:
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 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
| / sevelet de test de connection
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;
import java.util.*;
import javax.naming.*;
import javax.sql.*;
import oracle.jdbc.driver.*;
public class UsersListPooledServlet extends HttpServlet
{
private DataSource ds;
public void init(ServletConfig config) throws ServletException
{
super.init(config);
try
{
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
ds = (DataSource) envCtx.lookup("jdbc/maquette");
}
catch (Exception e)
{
throw new UnavailableException(e.getMessage());
}
}
public void doGet (HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<html>");
out.println("<head>");
out.println("<title>test list des users</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>Contacts</h1>");
out.println("<table border=\"1\">");
out.println("<tr>");
out.println("<th>Prénom</th>");
out.println("<th>Nom</th>");
out.println("</tr>");
try
{
Connection con = ds.getConnection();
Statement s = con.createStatement();
ResultSet rs = s.executeQuery("SELECT * FROM USER ");
while(rs.next())
{
out.println("<tr>");
out.println("<td>"+ rs.getString("NOM")+"</td>");
out.println("<td>"+ rs.getString("PRENOM")+"</td>");
}
rs.close();
s.close();
con.close();
}
catch (SQLException sqle) {
response.sendError(500, "Exception lors dela communication avec la base de données: " + sqle);
}
out.println("</table>");
out.println("</body>");
out.println("</html>");
}
} |
lors du chargement de mon appli, sous IE j'obtient une erreur 505:
type Rapport d''état
message Exception lors dela communication avec la base de données: java.sql.SQLException: Cannot load JDBC driver class 'null'
description Le serveur a recontrer une erreur interne (Exception lors dela communication avec la base de données: java.sql.SQLException: Cannot load JDBC driver class 'null') qui l'a empèché de satisfaire la requête.
est dans les logs de tomcat l'erreur suivate:
2003-09-21 10:50:41 StandardContext[/maquette]: Le démarrage des ressources a échoué:
java.lang.NullPointerException
at java.io.File.<init>(File.java:180)
at org.apache.catalina.core.StandardContext.getBasePath(StandardContext.java:3888)...
2003-09-21 10:50:41 StandardHost[localhost]: Erreur lors du déploiement de l'application pour le chemin de contexte null
java.lang.NullPointerException
at org.apache.commons.digester.Digester.createSAXException(Digester.java:2540)...
2003-09-21 10:50:41 HostConfig[localhost] Erreur lors du déploiement du descripteur de configuration maquette.xml
java.io.IOException: java.lang.NullPointerException
at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:391)
at org.apache.catalina.core.StandardHost.install(StandardHost.java:803)...
DSl c'est un peu long, mais je suis debutant en prog et votre aide me sera précieuse, merci.