Hello,

I'm working on a program mixing EJB and object whose persistance is managed by DAO 
over JDBC.

I'd like to use the JBoss' connection pool to manage the connection available. I 
thought that the best way is to look up for the datasource and after to get connection 
from it. However I didn't success to look up for the DS. I don't know why and I wrote 
a small code to determine all the jndi names. I ran the same code on JOnAS and I got 
the JNDI name of my DS.

So I used as DataSource a RDBMS which is MaxDB 7.5.

here's my connector file :

  | <datasources>
  |   <xa-datasource>
  |     <jndi-name>MaxdbXADS</jndi-name>
  |     <track-connection-by-tx>true</track-connection-by-tx>
  |     
<xa-datasource-class>com.sap.dbtech.jdbcext.XADataSourceSapDB</xa-datasource-class>
  |     <xa-datasource-property 
name="Url">jdbc:sapdb://127.0.0.1/XM</xa-datasource-property>
  |     <xa-datasource-property name="User">dba</xa-datasource-property>
  |     <xa-datasource-property name="Password">dba</xa-datasource-property>
  |   </xa-datasource>
  | 
  | </datasources>
  | 

The connection is OK because I success to use CMP EJB and to persist data into the 
MaxDB.

Then after I wrote a simple Test class to catch the Datasource :

  | import java.util.Hashtable;
  | 
  | import javax.ejb.CreateException;
  | import javax.naming.Context;
  | import javax.naming.InitialContext;
  | import javax.naming.NamingEnumeration;
  | import javax.naming.NamingException;
  | import javax.sql.DataSource;
  | public class Test{
  | 
  | static Context ctx = null;
  | 
  | public static void main(String[]args) {
  |             Test prog = new Test();         
  |     }
  | 
  |     public Test(){
  |             try {
  |                      ctx = getContext();
  |                }
  |                catch (NamingException e) {
  |                      e.printStackTrace();
  |                      System.exit(2);
  |                }
  |             try {
  |                      NamingEnumeration enum = ctx.list("");
  |                      while (enum.hasMore()) {
  |                        System.out.println(enum.next());
  |                      }
  |                }
  |                catch (NamingException e) {
  |                      e.printStackTrace();
  |                }
  |                
  | // Next, lookup the DataSource
  |     try {
  |             DataSource  ds = (DataSource) getContext().lookup("java:/MaxdbXADS");
  |             System.out.println(ds.toString());
  |     } catch (NamingException e) {
  |             System.out.println("DS Not found");
  |     }
  |     
  |     }
  | 
  | private static InitialContext getContext() throws NamingException {
  |             Hashtable props = new Hashtable();
  | 
  |             props.put(
  |                     InitialContext.INITIAL_CONTEXT_FACTORY,
  |                     "org.jnp.interfaces.NamingContextFactory");
  |             props.put(InitialContext.PROVIDER_URL, "jnp://127.0.0.1:1099");
  | 
  |             InitialContext initialContext = new InitialContext(props);
  |             return initialContext;
  |     }
  | }

However I've the following result which proofs that i cannot connect on my Datasource. 
I find strange that when I display the list of Jndi names available there isn't my 
Datasource !


  | HAILConnectionFactory: org.jboss.mq.SpyConnectionFactory
  | HASessionState: org.jnp.interfaces.NamingContext
  | jmx: org.jnp.interfaces.NamingContext
  | OIL2XAConnectionFactory: org.jboss.mq.SpyXAConnectionFactory
  | HTTPXAConnectionFactory: org.jboss.mq.SpyXAConnectionFactory
  | ConnectionFactory: org.jboss.mq.SpyConnectionFactory
  | clustering: org.jnp.interfaces.NamingContext
  | UserTransactionSessionFactory: $Proxy10
  | HTTPConnectionFactory: org.jboss.mq.SpyConnectionFactory
  | ClientLocal: $Proxy44
  | XAConnectionFactory: org.jboss.mq.SpyXAConnectionFactory
  | invokers: org.jnp.interfaces.NamingContext
  | UserTransaction: org.jboss.tm.usertx.client.ClientUserTransaction
  | HAILXAConnectionFactory: org.jboss.mq.SpyXAConnectionFactory
  | RMIXAConnectionFactory: org.jboss.mq.SpyXAConnectionFactory
  | UILXAConnectionFactory: javax.naming.LinkRef
  | UIL2XAConnectionFactory: org.jboss.mq.SpyXAConnectionFactory
  | HAPartition: org.jnp.interfaces.NamingContext
  | queue: org.jnp.interfaces.NamingContext
  | topic: org.jnp.interfaces.NamingContext
  | console: org.jnp.interfaces.NamingContext
  | UIL2ConnectionFactory: org.jboss.mq.SpyConnectionFactory
  | UILConnectionFactory: javax.naming.LinkRef
  | CommandeLocal: $Proxy45
  | RMIConnectionFactory: org.jboss.mq.SpyConnectionFactory
  | CtrlGererCommandeVenteFacadeBean: $Proxy50
  | MaxIDLocal: $Proxy46
  | OIL2ConnectionFactory: org.jboss.mq.SpyConnectionFactory
  | UUIDKeyGeneratorFactory: 
org.jboss.ejb.plugins.keygenerator.uuid.UUIDKeyGeneratorFactory
  | DS not found
  | 

Does anybody have an idea ?

Xavier MOGHRABI

View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3822923#3822923

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3822923


-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click
_______________________________________________
JBoss-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to