That is very odd. Something has not worked because the stack trace shows the InitialContextFactoryBuilder has not been registered.
Could there be a timing issue? Perhaps the jndi bundle starts after your test. Certainly the jndi bundle has the highest id. Alasdair Nottingham On 16 Nov 2010, at 09:11, Charles Moulliard <[email protected]> wrote: > Yes. The Aries JNDI bundle is started > > [ 178] [Active ] [ ] [ ] [ 60] Apache Aries JNDI > Bundle (0.2.0.incubating) > > > > > On 16/11/10 09:52, Alasdair Nottingham wrote: >> Hi, >> >> Have you deployed and started the jndi bundle? >> >> Alasdair >> >> On 16 Nov 2010, at 08:18, Charles Moulliard<[email protected]> wrote: >> >>> Hi, >>> >>> Based on the Blog example of Aries, I have created a small project that I >>> deploy on Fuse ESB (=Apache ServiceMix 4). The project includes a DAO layer >>> (=JPA), Service layer, Camel route (where a bean calls my service layer). >>> >>> The following error is reported : >>> >>> Caused by: java.lang.RuntimeException: The DataSource >>> osgi:service/javax.sql.DataSource/(osgi.jndi.service.name=jdbc/reportincidentdb) >>> could not be used. >>> at >>> org.apache.aries.jpa.container.unit.impl.DelayedLookupDataSource.getDs(DelayedLookupDataSource.java:47) >>> at >>> org.apache.aries.jpa.container.unit.impl.DelayedLookupDataSource.getConnection(DelayedLookupDataSource.java:60) >>> at >>> org.apache.openjpa.lib.jdbc.DelegatingDataSource.getConnection(DelegatingDataSource.java:137) >>> at >>> org.apache.openjpa.lib.jdbc.DecoratingDataSource.getConnection(DecoratingDataSource.java:112) >>> at >>> org.apache.openjpa.jdbc.schema.DataSourceFactory.installDBDictionary(DataSourceFactory.java:239) >>> ... 100 more >>> Caused by: javax.naming.NoInitialContextException: Need to specify class >>> name in environment or system property, or as an applet parameter, or in an >>> application resource file: java.naming.factory.initial >>> at >>> javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:645) >>> at >>> javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)[:1.6.0_22] >>> at >>> javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:325)[:1.6.0_22] >>> at javax.naming.InitialContext.lookup(InitialContext.java:392)[:1.6.0_22] >>> at >>> org.apache.aries.jpa.container.unit.impl.DelayedLookupDataSource.getDs(DelayedLookupDataSource.java:43) >>> >>> Here is the bundle that I deploy to use Aries >>> >>> [ 7] [Active ] [Created ] [ ] [ 20] Apache Aries >>> Blueprint Bundle (0.2.0.incubating) >>> [ 49] [Active ] [ ] [ ] [ 60] Apache Aries >>> Transaction Manager (0.2.0.incubating) >>> [ 167] [Active ] [Created ] [ ] [ 60] Aries JPA Container >>> blueprint integration for Aries blueprint (0.2.0.incubating) >>> [ 170] [Active ] [Created ] [ ] [ 60] Apache Aries >>> Transaction Blueprint (0.2.0.incubating) >>> [ 171] [Active ] [ ] [ ] [ 60] Aries JPA Container >>> (0.2.0.incubating) >>> [ 172] [Active ] [ ] [ ] [ 60] Apache Aries Util >>> (0.2.0.incubating) >>> [ 175] [Active ] [ ] [ ] [ 60] Aries JPA Container >>> Managed Contexts (0.2.0.incubating) >>> [ 178] [Active ] [ ] [ ] [ 60] Apache Aries JNDI >>> Bundle (0.2.0.incubating) >>> >>> [ 166] [Active ] [Created ] [ ] [ 60] Reportincident :: >>> Persistence JPA :: Aries (1.0.0.SNAPSHOT) >>> [ 176] [Active ] [Created ] [ ] [ 60] Reportincident :: >>> Service Bundle :: Aries (1.0.0.SNAPSHOT) >>> >>> What is the reason ? Is there a bundle that I miss to deploy ? >>> >>> Regards, >>> >>> Charles M. >>> Apache Committer (Camel, Servicmix and Karaf)
