bonjour,
j'ai un petit soucis, je ne comprend pas pourquoi ma requête sql me retourne 0 résultats quand j'utilise le code java alors qu'avec la jstl tout fonctionne bien:
mon code qui marche:
celui qui ne marche pas:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <%@ 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/test"> select id, title from article </sql:query> <c:forEach var="row" items="${rs.rows}"> Foo ${row.id}<br/> Bar ${row.title}<br/> </c:forEach>
je n'ai aucunes exceptions remontées, je n'ai justes aucuns résultats, le resultset reste vide:/
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
28
29
30 <% javax.naming.Context initContext = new javax.naming.InitialContext(); javax.naming.Context envContext = (javax.naming.Context)initContext.lookup("java:/comp/env"); javax.sql.DataSource ds = (javax.sql.DataSource)envContext.lookup("jdbc/test"); java.sql.Connection connection = ds.getConnection(); java.sql.ResultSet resultSet = null; java.sql.Statement stmt = null; try{ stmt = connection.createStatement(); resultSet = stmt.executeQuery("select * from article"); if (resultSet != null) { while(resultSet.next()){ int id=resultSet.getInt("id"); String title=resultSet.getString("title"); out.print(id); out.print(title); } resultSet.close(); resultSet=null; } } catch(Exception sqlException){ throw new Exception(sqlException.getMessage()); } finally{ connection.close(); }
il doit y avoir une histoire de autocommit ou quelque chose dans le genre mais je n'ai pas trouvé:/
si quelqu'un à une idée?
merci d'avance.
Partager