ciao a tutti, dovrei riuscire a far girare questa classe:
codice:
package foo;
import javax.naming.*;
import javax.sql.*;
import java.sql.*;
public class DbTest {
String foo = "Not Connected";
int bar = -1;
public void init() {
Connection conn = null;
Statement stmt = null; // Or PreparedStatement if needed
ResultSet rst = null;
try{
Context ctx = new InitialContext();
if(ctx == null ) throw new Exception("Boom - No Context");
DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/TestPool");
if (ds != null) {
conn = ds.getConnection();
if(conn != null) {
foo = "Got Connection "+conn.toString();
stmt = conn.createStatement();
rst = stmt.executeQuery("select * from utente");
if(rst.next()) {
foo=rst.getString(2);
bar=rst.getInt(3);
}
conn.close();
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (rst != null) {
try { rst.close(); } catch (SQLException e) { ; }
rst = null;
}
if (stmt != null) {
try { stmt.close(); } catch (SQLException e) { ; }
stmt = null;
}
if (conn != null) {
try { conn.close(); } catch (SQLException e) { ; }
conn = null;
}
}
}
public String getFoo() { return foo; }
public int getBar() { return bar;}
}
poi ho questa pagina test.jsp:
codice:
<%
foo.DbTest tst = new foo.DbTest();
tst.init();
%>
<h2>Results</h2>
Foo <%= tst.getFoo() %>
Bar <%= tst.getBar() %>
e ho aggiunto questa parte al file server.xml:
<Context path="/testpool" docBase="c:\testpool" debug="1"
reloadable="true" crossContext="true">
<Logger className="org.apache.catalina.logger.FileLogger"
prefix="localhost_testpool_log." suffix=".txt"
timestamp="true"/>
<Resource name="jdbc/TestPool" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/TestPool">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFact ory</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>
<parameter>
<name>username</name>
<value>TESTUSER</value>
</parameter>
<parameter>
<name>password</name>
<value>testpwd</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>org.firebirdsql.jdbc.FBDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:firebirdsql:127.0.0.1/3050:C:/programmi/interbase/data/TESTDB.G_D
B</value>
</parameter>
</ResourceParams>
</Context>
ma ovviamente non funziona, qualcuno sa dirmi le parti da cambiare?