Bonjour,
Je voulais tester SpagoBI sur mon poste, mais je rencontre des soucis de connexion à MySQL. J'ai donc tenté de reproduire l'exemple fourni dans les docs de Tomcat, mais malheureusement cela ne fonctionne pas mieux.
Le problème vient donc de ma configuration de Tomcat
jstl.jar
mysql-connector-java.jar
standard.jar
et mon fichier Test.jsp déposé dans DBTest :
Je voulais tester SpagoBI sur mon poste, mais je rencontre des soucis de connexion à MySQL. J'ai donc tenté de reproduire l'exemple fourni dans les docs de Tomcat, mais malheureusement cela ne fonctionne pas mieux.
Le problème vient donc de ma configuration de Tomcat
yum install tomcat6*
Le fichier /etc/tomcat6/tomcat-users.xml :
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="TomcatAdmin" password="tomcat" roles="admin,manager"/>
</tomcat-users>
J'ai défini la connexion dans le fichier /etc/tomcat6/context.xml :<Context>
<!-- Default set of monitored resources -->
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<!-- Uncomment this to disable session persistence across Tomcat restarts -->
<!--
<Manager pathname="" />
-->
<!-- Uncomment this to enable Comet connection tacking (provides events
on session expiration as well as webapp lifecycle) -->
<!--
<Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />
-->
<Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="javauser" password="javadude" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/javatest?autoReconnect=true"/>
</Context>
/usr/share/tomcat6/webapps/DBTest/WEB-INF j'ai créé le fichier web.xml suivant :<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<description>MySQL Test App</description>
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/TestDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
dans /usr/share/tomcat6/webapps/DBTest/WEB-INF/lib les jar suivants ont été ajoutés :jstl.jar
mysql-connector-java.jar
standard.jar
et mon fichier Test.jsp déposé dans DBTest :
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<sql:query var="rs" dataSource="jdbc/TestDB">
select id, foo, bar from testdata
</sql:query>
<html>
<head>
<title>DB Test</title>
</head>
<body>
<h2>Results</h2>
<c:forEach var="row" items="${rs.rows}">
Foo ${row.foo}<br/>
Bar ${row.bar}<br/>
</c:forEach>
</body>
</html>
J'obtiens l'erreur suivante :javax.servlet.ServletException: javax.servlet.jsp.JspException: Unable to get connection, DataSource invalid: "java.sql.SQLException: No suitable driver found for jdbc/TestDB"
Je vous remercie d'avance de toute aide.