Coloquei isso no server.xml
antes do fechamento da tag </hosts>
<Context path="" reloadable="true" docBase="" debug="0">
<Resource name="jdbc/postgres" auth="Container" type="javax.sql.DataSource" factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
username = ".."
password = ".."
driverClassName = "org.postgresql.Driver"
url = "jdbc:postgresql://localhost:5432/xxxx"
maxWait="1000" removeAbandoned="true"
maxActive="100" maxIdle="30"
removeAbandonedTimeout="60" logAbandoned="true"/>
</Context>
sendo que os jar ja estao dentro do container, na pasta lib correto? agora eu preciso especificar no web-xml da aplicacao que eu to rodando ou no web.xml que esta situando dentro da pasta conf do tomcat?
<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">
<web-app>
<description>Postgres Connection Pooling Test</description>
<resource-ref>
<description>DB Connection</description>
<res-ref-name>jdbc/postgres</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
nao esta tudo certo? ou eu preciso configurar algo a mais?
e para conectar eu nao faco isso daki?
Connection conn = null;
try {
Context initCtx = new InitialContext();
DataSource ds =(DataSource)initCtx.lookup("java:comp/env/jdbc/postgres");
// ou
// Context envContext = (Context)initCtx.lookup("java:comp/env");
// DataSource ds = (DataSource) envContext.lookup("jdbc/postgres");
try {
conn = ds.getConnection();
} catch (SQLException e1) {
System.out.println("ERRO: Nao conseguiu conectar");
}
} catch (NamingException e) {
System.out.println("Falha ao conectar");
}
}
So que mesmo assim ta dando aqueles erros,
agora, para que existe, na parte administrativa, do tomca o data source, usando jndi, sendo que nao funciona, alguem ja fez dos dois modos e funcionou ?? O que eu estou fazendo de errado?