((DataSource) new InitialContext().lookup("openejb:Resource/myDataSource")).getConnection()
sorry i pasted the bad path last time - Romain 2012/5/15 Romain Manni-Bucau <rmannibu...@gmail.com> > it seems fine, any luck you share this part of the project? > > - Romain > > > 2012/5/15 José Luis Cetina <maxtorz...@gmail.com> > >> Ok i add my class in a jar file, but im getting: >> >> javax.naming.NameNotFoundException:The name openejb/Resource/MyDataSource >> does not exist in the current context. >> >> is openejb/Resource/MyDataSource the correct directory for use the >> datasource? >> >> 2012/5/15 Romain Manni-Bucau <rmannibu...@gmail.com> >> >> > it should be in tomee libs, not your project. (another solution is to >> use >> > the snapshot ;) and use the default datasource realm) >> > >> > - Romain >> > >> > >> > 2012/5/15 José Luis Cetina <maxtorz...@gmail.com> >> > >> > > I did this: >> > > >> > > context.mxl >> > > >> > > <?xml version="1.0" encoding="UTF-8"?> >> > > <Context antiJARLocking="true" path="/mavenproject3"> >> > > <Realm className="realm.test.MyDataSourceRealm" >> > > dataSourceName="MyDataSource" >> > > userTable="usertable" >> > > userNameCol="usercol" >> > > userCredCol="passcol" >> > > userRoleTable="roltable" >> > > roleNameCol="rolcol"/> >> > > </Context> >> > > >> > > >> > > >> > > MyDataSourceRealm.java: >> > > >> > > package realm.test; >> > > >> > > import java.sql.Connection; >> > > import javax.naming.InitialContext; >> > > import javax.sql.DataSource; >> > > >> > > public class MyDataSourceRealm extends >> > > org.apache.catalina.realm.DataSourceRealm{ >> > > >> > > @Override >> > > protected Connection open() { >> > > DataSource dataSource = null; >> > > try{ >> > > dataSource = (DataSource)new >> > > InitialContext().lookup("java:openejb/Resource/" + dataSourceName); >> > > return dataSource.getConnection(); >> > > } >> > > catch(Exception e){ >> > > e.printStackTrace(); >> > > } >> > > return null; >> > > } >> > > >> > > } >> > > >> > > >> > > And i always get ClassNotFoundException: >> > > >> > > Severe: Begin event threw exception >> > > java.lang.ClassNotFoundException: realm.test.KxDataSourceRealm >> > > >> > > My class is in my same project, and the package is correct, i dont >> know >> > why >> > > my class cannot be found. >> > > >> > > What can be?? >> > > >> > > Thanks >> > > >> > > >> > > 2012/5/14 Romain Manni-Bucau <rmannibu...@gmail.com> >> > > >> > > > here the issue https://issues.apache.org/jira/browse/TOMEE-191 >> > > > >> > > > here a sample >> > > > http://openejb.apache.org/examples-trunk/realm-in-tomee/README.html >> > > > >> > > > - Romain >> > > > >> > > > >> > > > 2012/5/15 Romain Manni-Bucau <rmannibu...@gmail.com> >> > > > >> > > > > seems using org.apache.catalina.realm.DataSourceRealm doesn't work >> > out >> > > of >> > > > > the box (currently hacking on it). >> > > > > >> > > > > extending it and >> > > > > overriding org.apache.catalina.realm.DataSourceRealm#open() to >> make: >> > > > > DataSource dataSource = (DataSource)new >> > > > > InitialContext().lookup("java:openejb/Resource/" + >> dataSourceName); >> > > > should >> > > > > be enough as a workaround. >> > > > > >> > > > > - Romain >> > > > > >> > > > > >> > > > > >> > > > > 2012/5/14 Jean-Louis MONTEIRO <jeano...@gmail.com> >> > > > > >> > > > >> That seems correct to me. >> > > > >> Can you try adding the property localDataSource=true >> > > > >> to the following realm definition ? >> > > > >> >> > > > >> <Realm >> > > > >> className="org.apache.catalina.realm.DataSourceRealm" >> > > > >> dataSourceName="MyDataSource" >> > > > >> userTable="userTable" >> > > > >> userNameCol="user" >> > > > >> userCredCol="pass" >> > > > >> userRoleTable="rolTable" >> > > > >> roleNameCol="rol"/> >> > > > >> >> > > > >> That should hopefully do the trick as Tomcat will lookup to the >> > right >> > > > >> context. >> > > > >> The only issue that may happen is the order. I mean, may be >> Tomcat >> > > gonna >> > > > >> lookup the resource before TomEE fully initialize and register >> the >> > > > >> datasource. >> > > > >> >> > > > >> Anyway, let's proceed with the property. We can continue >> > investigating >> > > > >> after. >> > > > >> >> > > > >> Jean-Louis >> > > > >> >> > > > >> 2012/5/14 José Luis Cetina <maxtorz...@gmail.com> >> > > > >> >> > > > >> > Hi my web app use openJPA for database CRUD, i configure like >> > this: >> > > > >> > >> > > > >> > tomee.xml: >> > > > >> > >> > > > >> > <Resource id="MyDataSource" type="DataSource"> >> > > > >> > JdbcDriver com.mysql.jdbc.Driver >> > > > >> > JdbcUrl >> jdbc:mysql://localhost:3306/mydatabase?autoReconnect=true >> > > > >> > UserName myuser >> > > > >> > Password mypass >> > > > >> > JtaManaged true >> > > > >> > </Resource> >> > > > >> > >> > > > >> > <Resource id="MyUnmanagedDataSource" type="DataSource"> >> > > > >> > JdbcDriver com.mysql.jdbc.Driver >> > > > >> > JdbcUrl >> jdbc:mysql://localhost:3306/mydatabase?autoReconnect=true >> > > > >> > UserName myuser >> > > > >> > Password mypass >> > > > >> > JtaManaged false >> > > > >> > </Resource> >> > > > >> > >> > > > >> > >> > > > >> > my persistence.xml: >> > > > >> > >> > > > >> > <persistence version="2.0" xmlns=" >> > > > >> http://java.sun.com/xml/ns/persistence" >> > > > >> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> > > > >> xsi:schemaLocation=" >> > > > >> > http://java.sun.com/xml/ns/persistence >> > > > >> > http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"> >> > > > >> > <persistence-unit name="testPU" transaction-type="JTA"> >> > > > >> > >> > > > >> > >> > > > >> >> > > > >> > > >> > >> <provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider> >> > > > >> > <jta-data-source>MyDataSource</jta-data-source> >> > > > >> > >> > > > <non-jta-data-source>MyUnmanagedDataSource</non-jta-data-source> >> > > > >> > . >> > > > >> > . >> > > > >> > . >> > > > >> > </persistence> >> > > > >> > >> > > > >> > >> > > > >> > MyEJB.java >> > > > >> > >> > > > >> > @Stateless >> > > > >> > public class MyEJB { >> > > > >> > >> > > > >> > @PersistenceContext(name="testPU") >> > > > >> > private EntityManager em; >> > > > >> > >> > > > >> > public void test(){ >> > > > >> > ..... >> > > > >> > em.createQuery("SELECT o FROM Table o").getResultList(); >> > > > >> > ........ >> > > > >> > } >> > > > >> > } >> > > > >> > >> > > > >> > >> > > > >> > And all of this works without any trouble. :) >> > > > >> > >> > > > >> > >> > > > >> > Now im trying to use DataSourceRealm with the same Datasource >> > > > >> (tomee.xml) >> > > > >> > but doesnt work >> > > > >> > >> > > > >> > context.xml >> > > > >> > >> > > > >> > <Realm >> > > > >> > >> className="org.apache.catalina.realm.DataSourceRealm" >> > > > >> > dataSourceName="MyDataSource" >> > > > >> > userTable="userTable" >> > > > >> > userNameCol="user" >> > > > >> > userCredCol="pass" >> > > > >> > userRoleTable="rolTable" >> > > > >> > roleNameCol="rol"/> >> > > > >> > >> > > > >> > I expect the realm take the same DataSource from tomee.xml but >> > this >> > > > >> doesnt >> > > > >> > happend: >> > > > >> > >> > > > >> > Severe: ........ >> > > > >> > The MyDataSource name is not associated to this context. >> > > > >> > >> > > > >> > >> > > > >> > Is there a way to use the same datasource (tomee.xml) >> > > > >> > >> > > > >> > If i use JDBCRealm it works, but i want to reuse the same >> > datasource >> > > > >> > config. >> > > > >> > >> > > > >> > >> > > > >> > Any? >> > > > >> > >> > > > >> > >> > > > >> > >> > > > >> > -- >> > > > >> > >> > ------------------------------------------------------------------- >> > > > >> > SCJA. José Luis Cetina >> > > > >> > >> > ------------------------------------------------------------------- >> > > > >> > >> > > > >> > >> > > > >> > -- >> > > > >> > >> > ------------------------------------------------------------------- >> > > > >> > *SCJA. José Luis Cetina* >> > > > >> > >> > ------------------------------------------------------------------- >> > > > >> > >> > > > >> >> > > > > >> > > > > >> > > > >> > > >> > > >> > > >> > > -- >> > > ------------------------------------------------------------------- >> > > *SCJA. José Luis Cetina* >> > > ------------------------------------------------------------------- >> > > >> > >> >> >> >> -- >> ------------------------------------------------------------------- >> *SCJA. José Luis Cetina* >> ------------------------------------------------------------------- >> > >