Pessoal
Estou tentando fazer a referencia a um DataSource, no meu caso, oracle-ds.xml, no JBOSS. Coloquei dentro do /deploy.
a referencia estou fazendo assim:
ds = (DataSource) ctx.lookup(“java:comp/env/oracleDS”);
Mas nao funciona… retornando:
javax.naming.NameNotFoundException: comp not bound
Coloquei o classes12.jar, que é o drive do Oracle, dentro de /lib …
Onde estou errando, que passo nao fiz? Alguém pode me ajudar?
abços
No seu ejb-jar.jar defina uma entrada de ambiente para cada EJB.
[code]
<env-entry>
<env-entry-name>DataSourceName</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>java:/OracleDS</env-entry-value>
</env-entry>
[/code]
Vc pode usar este metodo para inicializar o DataSource :
[code]
private DataSource initDataSource() throws Exception {
InitialContext jndiCtx = new InitialContext();
Context envCtx = (Context) jndiCtx.lookup("java:comp/env");
String dataSourceName = (String) envCtx.lookup("DataSourceName");
return (DataSource) jndiCtx.lookup(dataSourceName);
}
[/code]
Verifique também se na inicialização do JBoss está ocorrendo algum erro no momento de fazer o bind deste DataSource.
Dê uma olhada no jmx-console e verifique o nome ao qual este DataSource está publicado.
Cláudio
Então cara, eu nao estou usando EJB. Preciso usar EJB pra criar um DataSource?? Acho que nao… sei lá… no WebSphere nao precisava, e como é totalmente visual a criação deste dataSource no WebSphere, nao enfrentei problemas.
Quando inicio o JBoss no console ele coloca:
14:28:07,625 INFO [oracleDS] Bound connection factory for resource adapter for ConnectionManager 'jboss.jca:service=LocalTxCM,name=oracleDS to JNDI name ‘java:/oracleDS’
Sério… nao estou entendendo… :roll:
abços
Woquiton