From f93b433ed8a25ce2d3810edaa104f37cc804f21e Mon Sep 17 00:00:00 2001 From: azhwani Date: Tue, 26 May 2020 15:32:56 +0100 Subject: [PATCH 01/18] Add simple-jndi to pom.xml --- persistence-modules/spring-persistence-simple-2/pom.xml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/persistence-modules/spring-persistence-simple-2/pom.xml b/persistence-modules/spring-persistence-simple-2/pom.xml index 8380d635de..b5676c2cb4 100644 --- a/persistence-modules/spring-persistence-simple-2/pom.xml +++ b/persistence-modules/spring-persistence-simple-2/pom.xml @@ -32,6 +32,13 @@ ${h2.version} test + + + + com.github.h-thurow + simple-jndi + ${simple-jndi.version} + @@ -53,6 +60,8 @@ 5.2.4.RELEASE 1.4.200 + + 0.23.0 3.3.3 From 33ba33867fb03a31b899ad63e5df13ca4a9749e0 Mon Sep 17 00:00:00 2001 From: azhwani Date: Tue, 26 May 2020 15:34:02 +0100 Subject: [PATCH 02/18] Create datasource.properties file --- .../src/test/resources/datasource.properties | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 persistence-modules/spring-persistence-simple-2/src/test/resources/datasource.properties diff --git a/persistence-modules/spring-persistence-simple-2/src/test/resources/datasource.properties b/persistence-modules/spring-persistence-simple-2/src/test/resources/datasource.properties new file mode 100644 index 0000000000..a86a6c6ce2 --- /dev/null +++ b/persistence-modules/spring-persistence-simple-2/src/test/resources/datasource.properties @@ -0,0 +1,5 @@ +ds.type=javax.sql.DataSource +ds.driver=org.h2.Driver +ds.url=jdbc:jdbc:h2:mem:testdb +ds.user=sa +ds.password=password \ No newline at end of file From 954d6b5be9920fdcd6509604f96b866d2fbcf22e Mon Sep 17 00:00:00 2001 From: azhwani Date: Tue, 26 May 2020 15:34:41 +0100 Subject: [PATCH 03/18] Add unit tests --- .../jndi/datasource/SimpleJNDIUnitTest.java | 37 +++++++++++++++++++ .../SimpleNamingContextBuilderUnitTest.java | 32 ++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java create mode 100644 persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java new file mode 100644 index 0000000000..cf44de8618 --- /dev/null +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java @@ -0,0 +1,37 @@ +package com.baeldung.jndi.datasource; + +import static org.junit.Assert.assertEquals; + +import javax.naming.Context; +import javax.naming.InitialContext; +import javax.sql.DataSource; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +public class SimpleJNDIUnitTest { + + private InitialContext initContext; + + @BeforeEach + public void setup() throws Exception { + System.setProperty("java.naming.factory.initial", "org.osjava.sj.SimpleContextFactory"); + System.setProperty("org.osjava.sj.root", "file://src/test/resources"); + System.setProperty("org.osjava.sj.delimiter", "."); + System.setProperty("jndi.syntax.separator", "/"); + System.setProperty("org.osjava.sj.space", "java:/comp/env"); + + this.initContext = new InitialContext(); + } + + @Test + public void whenMockJndiDataSource_thenReturnJndiDataSource() throws Exception { + String dsString = "org.h2.Driver::::jdbc:jdbc:h2:mem:testdb::::sa"; + + Context envContext = (Context) this.initContext.lookup("java:/comp/env"); + DataSource ds = (DataSource) envContext.lookup("datasource/ds"); + + assertEquals(dsString, ds.toString()); + } + +} \ No newline at end of file diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java new file mode 100644 index 0000000000..7fdd47a77d --- /dev/null +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java @@ -0,0 +1,32 @@ +package com.baeldung.jndi.datasource; + +import static org.junit.Assert.assertNotNull; + +import javax.naming.InitialContext; +import javax.sql.DataSource; + +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.springframework.jdbc.datasource.DriverManagerDataSource; +import org.springframework.mock.jndi.SimpleNamingContextBuilder; + +@SuppressWarnings("deprecation") +public class SimpleNamingContextBuilderUnitTest { + + private InitialContext initContext; + + @BeforeEach + public void init() throws Exception { + SimpleNamingContextBuilder.emptyActivatedContextBuilder(); + this.initContext = new InitialContext(); + } + + @Test + public void whenMockJndiDataSource_thenReturnJndiDataSource() throws Exception { + this.initContext.bind("java:comp/env/jdbc/datasource", new DriverManagerDataSource("jdbc:h2:mem:testdb")); + DataSource ds = (DataSource) this.initContext.lookup("java:comp/env/jdbc/datasource"); + + assertNotNull(ds.getConnection()); + } + +} \ No newline at end of file From 684e5a4a6c136c6f6afebf44a6547054f1cbc408 Mon Sep 17 00:00:00 2001 From: azhwani Date: Tue, 2 Jun 2020 13:28:02 +0100 Subject: [PATCH 04/18] remove tabs and extra spaces from pom.xml --- .../spring-persistence-simple-2/pom.xml | 121 +++++++++--------- 1 file changed, 61 insertions(+), 60 deletions(-) diff --git a/persistence-modules/spring-persistence-simple-2/pom.xml b/persistence-modules/spring-persistence-simple-2/pom.xml index b5676c2cb4..d2bcdb4e19 100644 --- a/persistence-modules/spring-persistence-simple-2/pom.xml +++ b/persistence-modules/spring-persistence-simple-2/pom.xml @@ -1,69 +1,70 @@ - - 4.0.0 - spring-persistence-simple-2 - 0.1-SNAPSHOT - spring-persistence-simple-2 + + 4.0.0 + spring-persistence-simple-2 + 0.1-SNAPSHOT + spring-persistence-simple-2 - - com.baeldung - persistence-modules - 1.0.0-SNAPSHOT - + + com.baeldung + persistence-modules + 1.0.0-SNAPSHOT + - - - - org.springframework - spring-orm - ${org.springframework.version} - - - org.springframework - spring-context - ${org.springframework.version} - - - - - com.h2database - h2 - ${h2.version} - test - - - - - com.github.h-thurow - simple-jndi - ${simple-jndi.version} + + + + org.springframework + spring-orm + ${org.springframework.version} + + + org.springframework + spring-context + ${org.springframework.version} - - - org.springframework - spring-test - ${org.springframework.version} - test - - - org.mockito - mockito-core - ${mockito.version} - test - - + + + com.h2database + h2 + ${h2.version} + test + - - - 5.2.4.RELEASE - - 1.4.200 - + + + com.github.h-thurow + simple-jndi + ${simple-jndi.version} + + + + + org.springframework + spring-test + ${org.springframework.version} + test + + + org.mockito + mockito-core + ${mockito.version} + test + + + + + + 5.2.4.RELEASE + + 1.4.200 + 0.23.0 - - 3.3.3 - + + 3.3.3 + \ No newline at end of file From fd94f30e26f55db1d7a9b0cb7cec83c8ddc3e88c Mon Sep 17 00:00:00 2001 From: azhwani Date: Tue, 2 Jun 2020 13:37:36 +0100 Subject: [PATCH 05/18] clear System properties when the test tears down --- .../baeldung/jndi/datasource/SimpleJNDIUnitTest.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java index cf44de8618..f4122246fb 100644 --- a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java @@ -6,6 +6,7 @@ import javax.naming.Context; import javax.naming.InitialContext; import javax.sql.DataSource; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -34,4 +35,13 @@ public class SimpleJNDIUnitTest { assertEquals(dsString, ds.toString()); } + @AfterEach + public void tearDown() { + System.clearProperty("java.naming.factory.initial"); + System.clearProperty("org.osjava.sj.root"); + System.clearProperty("org.osjava.sj.delimiter"); + System.clearProperty("jndi.syntax.separator"); + System.clearProperty("org.osjava.sj.space"); + } + } \ No newline at end of file From b508ff2904ac23764b96dbeea6b5cd6b3c8f21ce Mon Sep 17 00:00:00 2001 From: azhwani Date: Tue, 2 Jun 2020 13:48:46 +0100 Subject: [PATCH 06/18] remove tabs and extra spaces from pom.xml --- .../spring-persistence-simple-2/pom.xml | 111 +++++++++--------- 1 file changed, 55 insertions(+), 56 deletions(-) diff --git a/persistence-modules/spring-persistence-simple-2/pom.xml b/persistence-modules/spring-persistence-simple-2/pom.xml index d2bcdb4e19..33ddf4c10c 100644 --- a/persistence-modules/spring-persistence-simple-2/pom.xml +++ b/persistence-modules/spring-persistence-simple-2/pom.xml @@ -1,70 +1,69 @@ - - 4.0.0 - spring-persistence-simple-2 - 0.1-SNAPSHOT - spring-persistence-simple-2 + + 4.0.0 + spring-persistence-simple-2 + 0.1-SNAPSHOT + spring-persistence-simple-2 - - com.baeldung - persistence-modules - 1.0.0-SNAPSHOT - + + com.baeldung + persistence-modules + 1.0.0-SNAPSHOT + - - - - org.springframework - spring-orm - ${org.springframework.version} - - - org.springframework - spring-context - ${org.springframework.version} - + + + + org.springframework + spring-orm + ${org.springframework.version} + + + org.springframework + spring-context + ${org.springframework.version} + - - - com.h2database - h2 - ${h2.version} - test - - - + + + com.h2database + h2 + ${h2.version} + test + + + com.github.h-thurow simple-jndi ${simple-jndi.version} - - - org.springframework - spring-test - ${org.springframework.version} - test - - - org.mockito - mockito-core - ${mockito.version} - test - - + + + org.springframework + spring-test + ${org.springframework.version} + test + + + org.mockito + mockito-core + ${mockito.version} + test + + - - - 5.2.4.RELEASE - - 1.4.200 - + + + 5.2.4.RELEASE + + 1.4.200 + 0.23.0 - - 3.3.3 - + + 3.3.3 + \ No newline at end of file From b1214ca64dae1261e19c66f270eb3d3b3712f2ae Mon Sep 17 00:00:00 2001 From: azhwani Date: Tue, 2 Jun 2020 13:54:10 +0100 Subject: [PATCH 07/18] remove tabs from pom.xml --- persistence-modules/spring-persistence-simple-2/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/persistence-modules/spring-persistence-simple-2/pom.xml b/persistence-modules/spring-persistence-simple-2/pom.xml index 33ddf4c10c..b8f3b384a2 100644 --- a/persistence-modules/spring-persistence-simple-2/pom.xml +++ b/persistence-modules/spring-persistence-simple-2/pom.xml @@ -33,7 +33,7 @@ test - + com.github.h-thurow simple-jndi @@ -60,7 +60,7 @@ 5.2.4.RELEASE 1.4.200 - + 0.23.0 3.3.3 From 7d7662a352ce1164c548fc86f2e690e5eca0c460 Mon Sep 17 00:00:00 2001 From: azhwani Date: Wed, 10 Jun 2020 00:31:44 +0200 Subject: [PATCH 08/18] add jndi.properties --- .../jndi/datasource/SimpleJNDIUnitTest.java | 16 ---------------- .../src/test/resources/jndi.properties | 5 +++++ 2 files changed, 5 insertions(+), 16 deletions(-) create mode 100644 persistence-modules/spring-persistence-simple-2/src/test/resources/jndi.properties diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java index f4122246fb..7132999000 100644 --- a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java @@ -6,7 +6,6 @@ import javax.naming.Context; import javax.naming.InitialContext; import javax.sql.DataSource; -import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -16,12 +15,6 @@ public class SimpleJNDIUnitTest { @BeforeEach public void setup() throws Exception { - System.setProperty("java.naming.factory.initial", "org.osjava.sj.SimpleContextFactory"); - System.setProperty("org.osjava.sj.root", "file://src/test/resources"); - System.setProperty("org.osjava.sj.delimiter", "."); - System.setProperty("jndi.syntax.separator", "/"); - System.setProperty("org.osjava.sj.space", "java:/comp/env"); - this.initContext = new InitialContext(); } @@ -35,13 +28,4 @@ public class SimpleJNDIUnitTest { assertEquals(dsString, ds.toString()); } - @AfterEach - public void tearDown() { - System.clearProperty("java.naming.factory.initial"); - System.clearProperty("org.osjava.sj.root"); - System.clearProperty("org.osjava.sj.delimiter"); - System.clearProperty("jndi.syntax.separator"); - System.clearProperty("org.osjava.sj.space"); - } - } \ No newline at end of file diff --git a/persistence-modules/spring-persistence-simple-2/src/test/resources/jndi.properties b/persistence-modules/spring-persistence-simple-2/src/test/resources/jndi.properties new file mode 100644 index 0000000000..e056681621 --- /dev/null +++ b/persistence-modules/spring-persistence-simple-2/src/test/resources/jndi.properties @@ -0,0 +1,5 @@ +java.naming.factory.initial=org.osjava.sj.SimpleContextFactory +org.osjava.sj.root=file://src/test/resources +org.osjava.sj.delimiter=. +jndi.syntax.separator=/ +org.osjava.sj.space=java:/comp/env \ No newline at end of file From a14f5ad89705664dc314f0e4df35d21fadca3ecc Mon Sep 17 00:00:00 2001 From: azhwani <> Date: Wed, 10 Jun 2020 00:01:44 +0100 Subject: [PATCH 09/18] remove System properties from unit tests --- .../java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java | 1 - 1 file changed, 1 deletion(-) diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java index 7132999000..6fc1a8975a 100644 --- a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java @@ -21,7 +21,6 @@ public class SimpleJNDIUnitTest { @Test public void whenMockJndiDataSource_thenReturnJndiDataSource() throws Exception { String dsString = "org.h2.Driver::::jdbc:jdbc:h2:mem:testdb::::sa"; - Context envContext = (Context) this.initContext.lookup("java:/comp/env"); DataSource ds = (DataSource) envContext.lookup("datasource/ds"); From 861030bef528a42ad04d2a7c549d980fe768d288 Mon Sep 17 00:00:00 2001 From: azhwani <> Date: Wed, 10 Jun 2020 00:20:45 +0100 Subject: [PATCH 10/18] Add jndi.properties --- .../src/main/resources/jndi.properties | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties diff --git a/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties b/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties new file mode 100644 index 0000000000..e056681621 --- /dev/null +++ b/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties @@ -0,0 +1,5 @@ +java.naming.factory.initial=org.osjava.sj.SimpleContextFactory +org.osjava.sj.root=file://src/test/resources +org.osjava.sj.delimiter=. +jndi.syntax.separator=/ +org.osjava.sj.space=java:/comp/env \ No newline at end of file From fc78b241078d4cda5aa2428b6a7475e7f5ce50fd Mon Sep 17 00:00:00 2001 From: azhwani <> Date: Wed, 10 Jun 2020 00:33:21 +0100 Subject: [PATCH 11/18] quick update --- .../src/main/resources/jndi.properties | 5 ----- .../jndi/datasource/SimpleJNDIUnitTest.java | 16 ++++++++++++++++ 2 files changed, 16 insertions(+), 5 deletions(-) delete mode 100644 persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties diff --git a/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties b/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties deleted file mode 100644 index e056681621..0000000000 --- a/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties +++ /dev/null @@ -1,5 +0,0 @@ -java.naming.factory.initial=org.osjava.sj.SimpleContextFactory -org.osjava.sj.root=file://src/test/resources -org.osjava.sj.delimiter=. -jndi.syntax.separator=/ -org.osjava.sj.space=java:/comp/env \ No newline at end of file diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java index 6fc1a8975a..711ae61889 100644 --- a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java @@ -6,6 +6,7 @@ import javax.naming.Context; import javax.naming.InitialContext; import javax.sql.DataSource; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -15,6 +16,12 @@ public class SimpleJNDIUnitTest { @BeforeEach public void setup() throws Exception { + System.setProperty("java.naming.factory.initial", "org.osjava.sj.SimpleContextFactory"); + System.setProperty("org.osjava.sj.root", "file://src/test/resources"); + System.setProperty("org.osjava.sj.delimiter", "."); + System.setProperty("jndi.syntax.separator", "/"); + System.setProperty("org.osjava.sj.space", "java:/comp/env"); + this.initContext = new InitialContext(); } @@ -26,5 +33,14 @@ public class SimpleJNDIUnitTest { assertEquals(dsString, ds.toString()); } + + @AfterEach + public void tearDown() { + System.clearProperty("java.naming.factory.initial"); + System.clearProperty("org.osjava.sj.root"); + System.clearProperty("org.osjava.sj.delimiter"); + System.clearProperty("jndi.syntax.separator"); + System.clearProperty("org.osjava.sj.space"); + } } \ No newline at end of file From a7697334bda66251988688d5199ca6e0c64cf1fb Mon Sep 17 00:00:00 2001 From: azhwani Date: Wed, 10 Jun 2020 10:18:21 +0100 Subject: [PATCH 12/18] update SimpleJNDIUnitTest --- .../jndi/datasource/SimpleJNDIUnitTest.java | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java index 711ae61889..6fc1a8975a 100644 --- a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java @@ -6,7 +6,6 @@ import javax.naming.Context; import javax.naming.InitialContext; import javax.sql.DataSource; -import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -16,12 +15,6 @@ public class SimpleJNDIUnitTest { @BeforeEach public void setup() throws Exception { - System.setProperty("java.naming.factory.initial", "org.osjava.sj.SimpleContextFactory"); - System.setProperty("org.osjava.sj.root", "file://src/test/resources"); - System.setProperty("org.osjava.sj.delimiter", "."); - System.setProperty("jndi.syntax.separator", "/"); - System.setProperty("org.osjava.sj.space", "java:/comp/env"); - this.initContext = new InitialContext(); } @@ -33,14 +26,5 @@ public class SimpleJNDIUnitTest { assertEquals(dsString, ds.toString()); } - - @AfterEach - public void tearDown() { - System.clearProperty("java.naming.factory.initial"); - System.clearProperty("org.osjava.sj.root"); - System.clearProperty("org.osjava.sj.delimiter"); - System.clearProperty("jndi.syntax.separator"); - System.clearProperty("org.osjava.sj.space"); - } } \ No newline at end of file From c11b7c225ef0220f19f8ad0a9f4d63208c087929 Mon Sep 17 00:00:00 2001 From: azhwani Date: Wed, 10 Jun 2020 10:34:38 +0100 Subject: [PATCH 13/18] update SimpleJNDIUnitTest --- .../jndi/datasource/SimpleJNDIUnitTest.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java index 6fc1a8975a..138db10a30 100644 --- a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java @@ -6,6 +6,7 @@ import javax.naming.Context; import javax.naming.InitialContext; import javax.sql.DataSource; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -15,6 +16,12 @@ public class SimpleJNDIUnitTest { @BeforeEach public void setup() throws Exception { + System.setProperty("java.naming.factory.initial", "org.osjava.sj.SimpleContextFactory"); + System.setProperty("org.osjava.sj.root", "file://src/test/resources"); + System.setProperty("org.osjava.sj.delimiter", "."); + System.setProperty("jndi.syntax.separator", "/"); + System.setProperty("org.osjava.sj.space", "java:/comp/env"); + this.initContext = new InitialContext(); } @@ -26,5 +33,16 @@ public class SimpleJNDIUnitTest { assertEquals(dsString, ds.toString()); } + + @AfterEach + public void tearDown() throws Exception { + System.clearProperty("java.naming.factory.initial"); + System.clearProperty("org.osjava.sj.root"); + System.clearProperty("org.osjava.sj.delimiter"); + System.clearProperty("jndi.syntax.separator"); + System.clearProperty("org.osjava.sj.space"); + + this.initContext = null; + } } \ No newline at end of file From ce269ad6ba5174c894f98427e07c13e668899193 Mon Sep 17 00:00:00 2001 From: azhwani <> Date: Wed, 10 Jun 2020 11:14:34 +0100 Subject: [PATCH 14/18] update SimpleJNDIUnitTest --- .../src/test/resources/jndi.properties | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 persistence-modules/spring-persistence-simple-2/src/test/resources/jndi.properties diff --git a/persistence-modules/spring-persistence-simple-2/src/test/resources/jndi.properties b/persistence-modules/spring-persistence-simple-2/src/test/resources/jndi.properties deleted file mode 100644 index e056681621..0000000000 --- a/persistence-modules/spring-persistence-simple-2/src/test/resources/jndi.properties +++ /dev/null @@ -1,5 +0,0 @@ -java.naming.factory.initial=org.osjava.sj.SimpleContextFactory -org.osjava.sj.root=file://src/test/resources -org.osjava.sj.delimiter=. -jndi.syntax.separator=/ -org.osjava.sj.space=java:/comp/env \ No newline at end of file From ecf97d79ea2d653c4924c031c4cf3b62184b9d73 Mon Sep 17 00:00:00 2001 From: azhwani <> Date: Wed, 10 Jun 2020 18:41:33 +0100 Subject: [PATCH 15/18] update jndi.properties --- .../src/main/resources/jndi.properties | 6 +++ .../main/resources/jndi/datasource.properties | 5 ++ .../jndi/datasource/SimpleJNDIUnitTest.java | 48 ------------------- 3 files changed, 11 insertions(+), 48 deletions(-) create mode 100644 persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties create mode 100644 persistence-modules/spring-persistence-simple-2/src/main/resources/jndi/datasource.properties delete mode 100644 persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java diff --git a/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties b/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties new file mode 100644 index 0000000000..d976f16c02 --- /dev/null +++ b/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi.properties @@ -0,0 +1,6 @@ +java.naming.factory.initial=org.osjava.sj.SimpleContextFactory +org.osjava.sj.jndi.shared=true +org.osjava.sj.delimiter=. +jndi.syntax.separator=/ +org.osjava.sj.space=java:/comp/env +org.osjava.sj.root=src/main/resources/jndi diff --git a/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi/datasource.properties b/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi/datasource.properties new file mode 100644 index 0000000000..8be94daf36 --- /dev/null +++ b/persistence-modules/spring-persistence-simple-2/src/main/resources/jndi/datasource.properties @@ -0,0 +1,5 @@ +ds.type=javax.sql.DataSource +ds.driver=org.h2.Driver +ds.url=jdbc:jdbc:h2:mem:testdb +ds.user=sa +ds.password=password diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java deleted file mode 100644 index 138db10a30..0000000000 --- a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.baeldung.jndi.datasource; - -import static org.junit.Assert.assertEquals; - -import javax.naming.Context; -import javax.naming.InitialContext; -import javax.sql.DataSource; - -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; - -public class SimpleJNDIUnitTest { - - private InitialContext initContext; - - @BeforeEach - public void setup() throws Exception { - System.setProperty("java.naming.factory.initial", "org.osjava.sj.SimpleContextFactory"); - System.setProperty("org.osjava.sj.root", "file://src/test/resources"); - System.setProperty("org.osjava.sj.delimiter", "."); - System.setProperty("jndi.syntax.separator", "/"); - System.setProperty("org.osjava.sj.space", "java:/comp/env"); - - this.initContext = new InitialContext(); - } - - @Test - public void whenMockJndiDataSource_thenReturnJndiDataSource() throws Exception { - String dsString = "org.h2.Driver::::jdbc:jdbc:h2:mem:testdb::::sa"; - Context envContext = (Context) this.initContext.lookup("java:/comp/env"); - DataSource ds = (DataSource) envContext.lookup("datasource/ds"); - - assertEquals(dsString, ds.toString()); - } - - @AfterEach - public void tearDown() throws Exception { - System.clearProperty("java.naming.factory.initial"); - System.clearProperty("org.osjava.sj.root"); - System.clearProperty("org.osjava.sj.delimiter"); - System.clearProperty("jndi.syntax.separator"); - System.clearProperty("org.osjava.sj.space"); - - this.initContext = null; - } - -} \ No newline at end of file From b9befff7b5f100dbb313c3836e90585f7639be1e Mon Sep 17 00:00:00 2001 From: azhwani <> Date: Wed, 10 Jun 2020 18:46:08 +0100 Subject: [PATCH 16/18] updating jndi.properties --- .../jndi/datasource/SimpleJNDIUnitTest.java | 39 +++++++++++++++++++ .../SimpleNamingContextBuilderUnitTest.java | 9 +++++ 2 files changed, 48 insertions(+) create mode 100644 persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java new file mode 100644 index 0000000000..dbda32172d --- /dev/null +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java @@ -0,0 +1,39 @@ +package com.baeldung.jndi.datasource; + +import static org.junit.Assert.assertEquals; + +import javax.naming.Context; +import javax.naming.InitialContext; +import javax.sql.DataSource; + +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +public class SimpleJNDIUnitTest { + + private InitialContext initContext; + + @BeforeEach + public void setup() throws Exception { + this.initContext = new InitialContext(); + } + + @Test + public void whenMockJndiDataSource_thenReturnJndiDataSource() throws Exception { + String dsString = "org.h2.Driver::::jdbc:jdbc:h2:mem:testdb::::sa"; + Context envContext = (Context) this.initContext.lookup("java:/comp/env"); + DataSource ds = (DataSource) envContext.lookup("datasource/ds"); + + assertEquals(dsString, ds.toString()); + } + + @AfterEach + public void tearDown() throws Exception { + if(this.initContext != null){ + this.initContext.close(); + this.initContext = null; + } + } + +} \ No newline at end of file diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java index 7fdd47a77d..abaf24b2da 100644 --- a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java @@ -5,6 +5,7 @@ import static org.junit.Assert.assertNotNull; import javax.naming.InitialContext; import javax.sql.DataSource; +import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.springframework.jdbc.datasource.DriverManagerDataSource; @@ -28,5 +29,13 @@ public class SimpleNamingContextBuilderUnitTest { assertNotNull(ds.getConnection()); } + + @AfterEach + public void tearDown() throws Exception { + if(this.initContext != null){ + this.initContext.close(); + this.initContext = null; + } + } } \ No newline at end of file From 5c9fbfc4c54fe3cdc6b2b4dccef24759e2dc90ba Mon Sep 17 00:00:00 2001 From: azhwani <> Date: Wed, 10 Jun 2020 18:54:37 +0100 Subject: [PATCH 17/18] update datasource.properties --- .../jndi/datasource/SimpleJNDIUnitTest.java | 39 ------------------- .../SimpleNamingContextBuilderUnitTest.java | 4 +- 2 files changed, 2 insertions(+), 41 deletions(-) delete mode 100644 persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java deleted file mode 100644 index dbda32172d..0000000000 --- a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.baeldung.jndi.datasource; - -import static org.junit.Assert.assertEquals; - -import javax.naming.Context; -import javax.naming.InitialContext; -import javax.sql.DataSource; - -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; - -public class SimpleJNDIUnitTest { - - private InitialContext initContext; - - @BeforeEach - public void setup() throws Exception { - this.initContext = new InitialContext(); - } - - @Test - public void whenMockJndiDataSource_thenReturnJndiDataSource() throws Exception { - String dsString = "org.h2.Driver::::jdbc:jdbc:h2:mem:testdb::::sa"; - Context envContext = (Context) this.initContext.lookup("java:/comp/env"); - DataSource ds = (DataSource) envContext.lookup("datasource/ds"); - - assertEquals(dsString, ds.toString()); - } - - @AfterEach - public void tearDown() throws Exception { - if(this.initContext != null){ - this.initContext.close(); - this.initContext = null; - } - } - -} \ No newline at end of file diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java index abaf24b2da..d0a06dd2bc 100644 --- a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleNamingContextBuilderUnitTest.java @@ -29,10 +29,10 @@ public class SimpleNamingContextBuilderUnitTest { assertNotNull(ds.getConnection()); } - + @AfterEach public void tearDown() throws Exception { - if(this.initContext != null){ + if (this.initContext != null) { this.initContext.close(); this.initContext = null; } From fa222f57195c710c59ac84898d9853279fe43cac Mon Sep 17 00:00:00 2001 From: azhwani <> Date: Wed, 10 Jun 2020 18:58:21 +0100 Subject: [PATCH 18/18] updating jndi.properties --- .../jndi/datasource/SimpleJNDIUnitTest.java | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java diff --git a/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java new file mode 100644 index 0000000000..37f33b1192 --- /dev/null +++ b/persistence-modules/spring-persistence-simple-2/src/test/java/com/baeldung/jndi/datasource/SimpleJNDIUnitTest.java @@ -0,0 +1,39 @@ +package com.baeldung.jndi.datasource; + +import static org.junit.Assert.assertEquals; + +import javax.naming.Context; +import javax.naming.InitialContext; +import javax.sql.DataSource; + +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; + +public class SimpleJNDIUnitTest { + + private InitialContext initContext; + + @BeforeEach + public void setup() throws Exception { + this.initContext = new InitialContext(); + } + + @Test + public void whenMockJndiDataSource_thenReturnJndiDataSource() throws Exception { + String dsString = "org.h2.Driver::::jdbc:jdbc:h2:mem:testdb::::sa"; + Context envContext = (Context) this.initContext.lookup("java:/comp/env"); + DataSource ds = (DataSource) envContext.lookup("datasource/ds"); + + assertEquals(dsString, ds.toString()); + } + + @AfterEach + public void tearDown() throws Exception { + if (this.initContext != null) { + this.initContext.close(); + this.initContext = null; + } + } + +}