Acho que é exatamente isso o que ele quer evitar...
Francisco, faz um tempo eu tb estava atras de ver uma solução, mas depois desisti por falta de tempo.
O que talvez vc possa fazer é olhar o fonte do
org.apache.commons.dbcp.BasicDataSourceFactory
e ver como ele faz pra criar o DataSource.
[]s, David.
trebor iksrazal wrote:
Esse examplo é para Oracle - tenho para Postgresql
também se quiser:
<!-- postgres connection pool by iksrazal -->
<Resource name="jdbc/oracle1"
auth="Container"
scope="Container"
type="javax.sql.DataSource"
/>
<ResourceParams name="jdbc/oracle1">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>oracle.jdbc.driver.OracleDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:oracle:thin:@192.168.2.120:1521:infoseg</value>
</parameter>
<parameter>
<name>username</name>
<value>infoseg</value>
</parameter>
<parameter>
<name>password</name>
<value>infoseg</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>
web.xml :
<resource-ref> <description>DB Connection</description> <res-ref-name>jdbc/oracle1</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref>
Código:
Context initContext = new InitialContext(); if(initContext == null ) { throw new Exception("Boom - No init Context"); }
Context envContext = (Context)initContext.lookup("java:/comp/env");
if(envContext == null ) { throw new Exception("Boom - No Env Context"); }
DataSource ds = DataSource)envContext.lookup("jdbc/oracle1");
if (ds != null) { Connection conn = ds.getConnection();
if(conn != null)
{
String foo = "Got Connection
"+conn.toString();(DataSource)envContext.lookup("jdbc/myoracle");
System.out.prinln(foo); }
else
{
throw new Exception("Boom - connection returned
null");
}
}
HTH (hope that helps), iksrazal
--- Francisco Jodevan Campelo <[EMAIL PROTECTED]> wrote:
Francisco Jodevan Campelo - Analista de Sistemas
Pessoal, alguém sabe dizer se é possível eu criar um datasource para usar na minha aplicação sem inserir as informações no server.xml usando o Tomcat 4.1.x? Eu sei que a partir do Tomcat 5 as informações do contexto que seriam colocadas no server.xml podem ser definidas dentro do arquivo context.xml da aplicação e assim o problema com o datasource fica resolvido. Há alguma forma de definir o datasource fora do context.xml com o Tomcat 4.1.x de tal maneira que fosse possível obter um pool de conexões e invocar o ctx.lookup("java:comp/env/xxxxx") sem dar erro?
Antecipadamente agradeço qualquer ajuda.
Francisco Jodevan Campelo
Analista de Sistemas
Grupo Secrel
[EMAIL PROTECTED]
www.gruposecrel.com.br
__________________________________ Do you Yahoo!? Yahoo! Sports - Sign up for Fantasy Baseball. http://baseball.fantasysports.yahoo.com/
-------------------------------------------------------------------------------------------
Ceara' Java User Group
Para cancelar sua assinatura, envie um e-mail para: [EMAIL PROTECTED]
Para mais informacoes, mande um e-mail para: [EMAIL PROTECTED]
Falar com o administrador? e-mail para: [EMAIL PROTECTED]
-------------------------------------------------------------------------------------------
Ceara' Java User Group
Para cancelar sua assinatura, envie um e-mail para: [EMAIL PROTECTED]
Para mais informacoes, mande um e-mail para: [EMAIL PROTECTED]
Falar com o administrador? e-mail para: [EMAIL PROTECTED]