<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Error when Testing a datasource in Nuxeo Forum</title>
    <link>https://connect.hyland.com/t5/nuxeo-forum/error-when-testing-a-datasource/m-p/325980#M12981</link>
    <description>&lt;P&gt;Hi, I am following this &lt;A href="http://doc.nuxeo.com/display/CORG/Testing+a+datasource"&gt;tutorial&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;In my pom.xml, add the dependency:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;&amp;lt;dependency&amp;gt;
      &amp;lt;groupId&amp;gt;org.nuxeo.runtime&amp;lt;/groupId&amp;gt;
      &amp;lt;artifactId&amp;gt;nuxeo-runtime-datasource&amp;lt;/artifactId&amp;gt;
      &amp;lt;scope&amp;gt;test&amp;lt;/scope&amp;gt;
    &amp;lt;/dependency&amp;gt;
In some circumstances, if your test dependencies aren't followed correctly, you may have to add as well:

&amp;lt;dependency&amp;gt;
      &amp;lt;groupId&amp;gt;commons-dbcp&amp;lt;/groupId&amp;gt;
      &amp;lt;artifactId&amp;gt;commons-dbcp&amp;lt;/artifactId&amp;gt;
      &amp;lt;scope&amp;gt;test&amp;lt;/scope&amp;gt;
    &amp;lt;/dependency&amp;gt;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;My contrib:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;component name="com.example.datasource.tests"&amp;gt;
  &amp;lt;extension target="org.nuxeo.runtime.datasource" point="datasources"&amp;gt;
    &amp;lt;datasource name="jdbc/foo" driverClassName="org.h2.Driver"
      maxActive="20" maxIdle="5"&amp;gt;
      &amp;lt;property name="url"&amp;gt;jdbc:h2:${ds.test.home}/db&amp;lt;/property&amp;gt;
    &amp;lt;/datasource&amp;gt;
  &amp;lt;/extension&amp;gt;
&amp;lt;/component&amp;gt;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Junit4 config test:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;@Features(CoreFeature.class)
@Deploy("org.nuxeo.runtime.datasource")
@LocalDeploy("myplugin:OSGI-INF/datasource-contrib.xml")
public class MyDataSourceFeature extends SimpleFeature {
 
    private static final String DIRECTORY = "target/test/h2";
    private static final String PROP_NAME = "ds.test.home";
 
    @Override
    public void initialize(FeaturesRunner runner) throws Exception {
        File dir = new File(DIRECTORY);
        FileUtils.deleteTree(dir);
        dir.mkdirs();
        Framework.getProperties().put(PROP_NAME, dir.getPath());
        super.initialize(runner);
    }
}
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;STRONG&gt;myplugin&lt;/STRONG&gt; I got from MANIFEST.MF file&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;Bundle-SymbolicName: myplugin
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;My test&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;@Test
    public void test() throws Exception {
        // look up jdbc/foo
        DataSource ds = DataSourceHelper.getDataSource("foo");
        Connection conn = ds.getConnection();
        try {
            ... use the connection ...
        } finally {
            conn.close();
        }
    }
    
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;but I am having this error when run test&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;javax.naming.NameNotFoundException; remaining name 'env/jdbc/foo'
	at org.mortbay.naming.NamingContext.lookup(NamingContext.java:634)
	at org.mortbay.naming.NamingContext.lookup(NamingContext.java:665)
	at org.mortbay.naming.NamingContext.lookup(NamingContext.java:680)
	at org.mortbay.naming.java.javaRootURLContext.lookup(javaRootURLContext.java:112)
	at javax.naming.InitialContext.lookup(Unknown Source)
	at org.nuxeo.runtime.api.DataSourceHelper.getDataSource(DataSourceHelper.java:125)
	at org.example.test.MyDataSourceFeature.test(MyDataSourceFeature.java:49)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:49)
	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.jdt.internal.launching.LongCommandLineLauncher.main(LongCommandLineLauncher.java:43)
&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Thu, 31 Jan 2013 17:34:55 GMT</pubDate>
    <dc:creator>geekonspace</dc:creator>
    <dc:date>2013-01-31T17:34:55Z</dc:date>
    <item>
      <title>Error when Testing a datasource</title>
      <link>https://connect.hyland.com/t5/nuxeo-forum/error-when-testing-a-datasource/m-p/325980#M12981</link>
      <description>&lt;P&gt;Hi, I am following this &lt;A href="http://doc.nuxeo.com/display/CORG/Testing+a+datasource"&gt;tutorial&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;In my pom.xml, add the dependency:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;&amp;lt;dependency&amp;gt;
      &amp;lt;groupId&amp;gt;org.nuxeo.runtime&amp;lt;/groupId&amp;gt;
      &amp;lt;artifactId&amp;gt;nuxeo-runtime-datasource&amp;lt;/artifactId&amp;gt;
      &amp;lt;scope&amp;gt;test&amp;lt;/scope&amp;gt;
    &amp;lt;/dependency&amp;gt;
In some circumstances, if your test dependencies aren't followed correctly, you may have to add as well:

&amp;lt;dependency&amp;gt;
      &amp;lt;groupId&amp;gt;commons-dbcp&amp;lt;/groupId&amp;gt;
      &amp;lt;artifactId&amp;gt;commons-dbcp&amp;lt;/artifactId&amp;gt;
      &amp;lt;scope&amp;gt;test&amp;lt;/scope&amp;gt;
    &amp;lt;/dependency&amp;gt;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;My contrib:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;&amp;lt;?xml version="1.0"?&amp;gt;
&amp;lt;component name="com.example.datasource.tests"&amp;gt;
  &amp;lt;extension target="org.nuxeo.runtime.datasource" point="datasources"&amp;gt;
    &amp;lt;datasource name="jdbc/foo" driverClassName="org.h2.Driver"
      maxActive="20" maxIdle="5"&amp;gt;
      &amp;lt;property name="url"&amp;gt;jdbc:h2:${ds.test.home}/db&amp;lt;/property&amp;gt;
    &amp;lt;/datasource&amp;gt;
  &amp;lt;/extension&amp;gt;
&amp;lt;/component&amp;gt;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Junit4 config test:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;@Features(CoreFeature.class)
@Deploy("org.nuxeo.runtime.datasource")
@LocalDeploy("myplugin:OSGI-INF/datasource-contrib.xml")
public class MyDataSourceFeature extends SimpleFeature {
 
    private static final String DIRECTORY = "target/test/h2";
    private static final String PROP_NAME = "ds.test.home";
 
    @Override
    public void initialize(FeaturesRunner runner) throws Exception {
        File dir = new File(DIRECTORY);
        FileUtils.deleteTree(dir);
        dir.mkdirs();
        Framework.getProperties().put(PROP_NAME, dir.getPath());
        super.initialize(runner);
    }
}
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;STRONG&gt;myplugin&lt;/STRONG&gt; I got from MANIFEST.MF file&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;Bundle-SymbolicName: myplugin
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;My test&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;@Test
    public void test() throws Exception {
        // look up jdbc/foo
        DataSource ds = DataSourceHelper.getDataSource("foo");
        Connection conn = ds.getConnection();
        try {
            ... use the connection ...
        } finally {
            conn.close();
        }
    }
    
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;but I am having this error when run test&lt;/P&gt;
&lt;PRE&gt;&lt;CODE&gt;javax.naming.NameNotFoundException; remaining name 'env/jdbc/foo'
	at org.mortbay.naming.NamingContext.lookup(NamingContext.java:634)
	at org.mortbay.naming.NamingContext.lookup(NamingContext.java:665)
	at org.mortbay.naming.NamingContext.lookup(NamingContext.java:680)
	at org.mortbay.naming.java.javaRootURLContext.lookup(javaRootURLContext.java:112)
	at javax.naming.InitialContext.lookup(Unknown Source)
	at org.nuxeo.runtime.api.DataSourceHelper.getDataSource(DataSourceHelper.java:125)
	at org.example.test.MyDataSourceFeature.test(MyDataSourceFeature.java:49)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
	at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:49)
	at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
	at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.jdt.internal.launching.LongCommandLineLauncher.main(LongCommandLineLauncher.java:43)
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 31 Jan 2013 17:34:55 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/nuxeo-forum/error-when-testing-a-datasource/m-p/325980#M12981</guid>
      <dc:creator>geekonspace</dc:creator>
      <dc:date>2013-01-31T17:34:55Z</dc:date>
    </item>
    <item>
      <title>Re: Error when Testing a datasource</title>
      <link>https://connect.hyland.com/t5/nuxeo-forum/error-when-testing-a-datasource/m-p/325981#M12982</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;Your code is missing the TransactionalFeature (required since 5.6). I've updated the &lt;A href="http://doc.nuxeo.com/x/5AFc"&gt;tutorial&lt;/A&gt; and added the sample tests in the &lt;A href="https://github.com/nuxeo/nuxeo-sample-project"&gt;nuxeo-sample-project&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;</description>
      <pubDate>Fri, 01 Feb 2013 18:10:23 GMT</pubDate>
      <guid>https://connect.hyland.com/t5/nuxeo-forum/error-when-testing-a-datasource/m-p/325981#M12982</guid>
      <dc:creator>Julien_Carsique</dc:creator>
      <dc:date>2013-02-01T18:10:23Z</dc:date>
    </item>
  </channel>
</rss>

