You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2019/06/28 12:53:45 UTC
[isis] branch v2 updated: ISIS-2126 fixes provisioning error by
disabling the TimestampService
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch v2
in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/v2 by this push:
new 35fdb8c ISIS-2126 fixes provisioning error by disabling the TimestampService
35fdb8c is described below
commit 35fdb8c1a5c82ddd32d919f34f2b566a31200606
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri Jun 28 14:53:38 2019 +0200
ISIS-2126 fixes provisioning error by disabling the TimestampService
- which initialized too early, marked deprecated ... still needed?
---
.../java/org/apache/isis/jdo/IsisJdoModule.java | 23 ----------------------
.../service/support/TimestampService.java | 2 ++
.../org/apache/isis/jdo/IsisBootDataNucleus.java | 18 +++++++++++++++++
.../spi => jdosupport}/IsisJdoSupportPlugin5.java | 2 +-
.../org/apache/isis/jdo/persistence/Utils.java | 2 +-
...rg.apache.isis.metamodel.IsisJdoMetamodelPlugin | 2 +-
...e.isis.runtime.persistence.IsisJdoRuntimePlugin | 2 +-
.../src/main/resources/plugin.xml | 14 ++++++-------
.../domainapp/application/DemoAppManifest.java | 4 ++--
.../application/HelloWorldAppManifest.java | 3 ++-
.../isis/testdomain/jdo/JdoTestApplication.java | 2 +-
.../isis/testdomain/jdo/JdoTestDomainModule.java | 21 ++++++++++++--------
.../testdomain/tests/JdoBootstrappingTest.java | 4 ----
13 files changed, 49 insertions(+), 50 deletions(-)
diff --git a/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/IsisJdoModule.java b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/IsisJdoModule.java
deleted file mode 100644
index 7332ae7..0000000
--- a/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/IsisJdoModule.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.isis.jdo;
-
-public final class IsisJdoModule {
-
-}
diff --git a/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/datanucleus/service/support/TimestampService.java b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/datanucleus/service/support/TimestampService.java
index 56c9a25..8b9d8b0 100644
--- a/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/datanucleus/service/support/TimestampService.java
+++ b/core/plugins/jdo-common/src/main/java/org/apache/isis/jdo/datanucleus/service/support/TimestampService.java
@@ -19,6 +19,7 @@ package org.apache.isis.jdo.datanucleus.service.support;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.enterprise.context.RequestScoped;
+import javax.enterprise.inject.Vetoed;
import javax.jdo.listener.InstanceLifecycleEvent;
import org.apache.isis.applib.annotation.DomainService;
@@ -36,6 +37,7 @@ import org.apache.isis.metamodel.JdoMetamodelUtil;
nature = NatureOfService.DOMAIN,
menuOrder = "" + Integer.MAX_VALUE
)
+@Vetoed @Deprecated //FIXME is this still required? does initialize too early
public class TimestampService implements
javax.jdo.listener.StoreLifecycleListener {
diff --git a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/IsisBootDataNucleus.java b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/IsisBootDataNucleus.java
new file mode 100644
index 0000000..edfc2d0
--- /dev/null
+++ b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/IsisBootDataNucleus.java
@@ -0,0 +1,18 @@
+package org.apache.isis.jdo;
+
+import org.apache.isis.jdo.jdosupport.IsisJdoSupportDN5;
+import org.apache.isis.jdo.metrics.MetricsServiceDefault;
+import org.apache.isis.jdo.transaction.IsisPlatformTransactionManagerForJdo;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
+
+@Configuration
+@Import({
+ //TimestampService.class, //FIXME initializes too early
+ MetricsServiceDefault.class,
+ IsisJdoSupportDN5.class,
+ IsisPlatformTransactionManagerForJdo.class,
+})
+public class IsisBootDataNucleus {
+
+}
diff --git a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/datanucleus/persistence/spi/IsisJdoSupportPlugin5.java b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/jdosupport/IsisJdoSupportPlugin5.java
similarity index 96%
rename from core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/datanucleus/persistence/spi/IsisJdoSupportPlugin5.java
rename to core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/jdosupport/IsisJdoSupportPlugin5.java
index 678dc6f..3a3d29e 100644
--- a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/datanucleus/persistence/spi/IsisJdoSupportPlugin5.java
+++ b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/jdosupport/IsisJdoSupportPlugin5.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.isis.jdo.datanucleus.persistence.spi;
+package org.apache.isis.jdo.jdosupport;
import java.lang.reflect.Method;
diff --git a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/persistence/Utils.java b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/persistence/Utils.java
index b9ace18..ac4cc87 100644
--- a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/persistence/Utils.java
+++ b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/jdo/persistence/Utils.java
@@ -26,7 +26,7 @@ import org.datanucleus.enhancement.Persistable;
import org.apache.isis.metamodel.adapter.version.Version;
import org.apache.isis.security.authentication.AuthenticationSession;
-public class Utils {
+final class Utils {
@SuppressWarnings("unused")
private static Object jdoObjectIdFor(InstanceLifecycleEvent event) {
diff --git a/core/plugins/jdo-datanucleus-5/src/main/resources/META-INF/services/org.apache.isis.metamodel.IsisJdoMetamodelPlugin b/core/plugins/jdo-datanucleus-5/src/main/resources/META-INF/services/org.apache.isis.metamodel.IsisJdoMetamodelPlugin
index e466753..4a6e9b3 100644
--- a/core/plugins/jdo-datanucleus-5/src/main/resources/META-INF/services/org.apache.isis.metamodel.IsisJdoMetamodelPlugin
+++ b/core/plugins/jdo-datanucleus-5/src/main/resources/META-INF/services/org.apache.isis.metamodel.IsisJdoMetamodelPlugin
@@ -1 +1 @@
-org.apache.isis.jdo.datanucleus.persistence.spi.IsisJdoSupportPlugin5
\ No newline at end of file
+org.apache.isis.jdo.jdosupport.IsisJdoSupportPlugin5
\ No newline at end of file
diff --git a/core/plugins/jdo-datanucleus-5/src/main/resources/META-INF/services/org.apache.isis.runtime.persistence.IsisJdoRuntimePlugin b/core/plugins/jdo-datanucleus-5/src/main/resources/META-INF/services/org.apache.isis.runtime.persistence.IsisJdoRuntimePlugin
index e466753..4a6e9b3 100644
--- a/core/plugins/jdo-datanucleus-5/src/main/resources/META-INF/services/org.apache.isis.runtime.persistence.IsisJdoRuntimePlugin
+++ b/core/plugins/jdo-datanucleus-5/src/main/resources/META-INF/services/org.apache.isis.runtime.persistence.IsisJdoRuntimePlugin
@@ -1 +1 @@
-org.apache.isis.jdo.datanucleus.persistence.spi.IsisJdoSupportPlugin5
\ No newline at end of file
+org.apache.isis.jdo.jdosupport.IsisJdoSupportPlugin5
\ No newline at end of file
diff --git a/core/plugins/jdo-datanucleus-5/src/main/resources/plugin.xml b/core/plugins/jdo-datanucleus-5/src/main/resources/plugin.xml
index c3d7745..29fc407 100644
--- a/core/plugins/jdo-datanucleus-5/src/main/resources/plugin.xml
+++ b/core/plugins/jdo-datanucleus-5/src/main/resources/plugin.xml
@@ -28,13 +28,13 @@
<extension point="org.datanucleus.store.rdbms.java_mapping">
<mapping
java-type="org.apache.isis.applib.value.Blob"
- mapping-class="org.apache.isis.objectstore.jdo.datanucleus.valuetypes.IsisBlobMapping"/>
+ mapping-class="org.apache.isis.jdo.datanucleus.valuetypes.IsisBlobMapping"/>
<mapping
java-type="org.apache.isis.applib.value.Clob"
- mapping-class="org.apache.isis.objectstore.jdo.datanucleus.valuetypes.IsisClobMapping"/>
+ mapping-class="org.apache.isis.jdo.datanucleus.valuetypes.IsisClobMapping"/>
<mapping
java-type="org.apache.isis.applib.value.Money"
- mapping-class="org.apache.isis.objectstore.jdo.datanucleus.valuetypes.IsisMoneyMapping"/>
+ mapping-class="org.apache.isis.jdo.datanucleus.valuetypes.IsisMoneyMapping"/>
</extension>
@@ -47,14 +47,14 @@
jdbc-type="BLOB"
sql-type="BLOB"
default="true"
- column-mapping-class="org.apache.isis.objectstore.jdo.datanucleus.valuemappings.ByteArrayBlobRdbmsMapping">
+ column-mapping-class="org.apache.isis.jdo.datanucleus.valuemappings.ByteArrayBlobRdbmsMapping">
</mapping>
<mapping
java-type="[Ljava.lang.Byte;"
jdbc-type="BLOB"
sql-type="BLOB"
default="true"
- column-mapping-class="org.apache.isis.objectstore.jdo.datanucleus.valuemappings.ByteArrayBlobRdbmsMapping">
+ column-mapping-class="org.apache.isis.jdo.datanucleus.valuemappings.ByteArrayBlobRdbmsMapping">
</mapping>
</extension>
@@ -83,7 +83,7 @@
name="isis.password-string"
member-type="org.apache.isis.applib.value.Password"
datastore-type="java.lang.String"
- converter-class="org.apache.isis.objectstore.jdo.datanucleus.typeconverters.IsisPasswordConverter"/>
+ converter-class="org.apache.isis.jdo.datanucleus.typeconverters.IsisPasswordConverter"/>
</extension>
<!--
@@ -94,7 +94,7 @@
name="isis.markup-string"
member-type="org.apache.isis.applib.value.Markup"
datastore-type="java.lang.String"
- converter-class="org.apache.isis.objectstore.jdo.datanucleus.typeconverters.IsisMarkupConverter"/>
+ converter-class="org.apache.isis.jdo.datanucleus.typeconverters.IsisMarkupConverter"/>
</extension>
</plugin>
diff --git a/example/application/demo/src/main/java/domainapp/application/DemoAppManifest.java b/example/application/demo/src/main/java/domainapp/application/DemoAppManifest.java
index bcd1f8d..35b6bae 100644
--- a/example/application/demo/src/main/java/domainapp/application/DemoAppManifest.java
+++ b/example/application/demo/src/main/java/domainapp/application/DemoAppManifest.java
@@ -23,7 +23,7 @@ import javax.inject.Singleton;
import org.apache.isis.config.Presets;
import org.apache.isis.config.beans.IsisBeanScanInterceptorForSpring;
import org.apache.isis.config.beans.WebAppConfigBean;
-import org.apache.isis.jdo.transaction.IsisPlatformTransactionManagerForJdo;
+import org.apache.isis.jdo.IsisBootDataNucleus;
import org.apache.isis.security.shiro.IsisBootSecurityShiro;
import org.apache.isis.viewer.wicket.viewer.IsisBootWebWicket;
import org.springframework.context.annotation.Bean;
@@ -49,7 +49,7 @@ import domainapp.dom.DemoModule;
})
@Import({
IsisBootSecurityShiro.class,
- IsisPlatformTransactionManagerForJdo.class,
+ IsisBootDataNucleus.class,
IsisBootWebWicket.class,
})
@ComponentScan(
diff --git a/example/application/helloworld/src/main/java/domainapp/application/HelloWorldAppManifest.java b/example/application/helloworld/src/main/java/domainapp/application/HelloWorldAppManifest.java
index fcec2b0..e7bf192 100644
--- a/example/application/helloworld/src/main/java/domainapp/application/HelloWorldAppManifest.java
+++ b/example/application/helloworld/src/main/java/domainapp/application/HelloWorldAppManifest.java
@@ -23,6 +23,7 @@ import javax.inject.Singleton;
import org.apache.isis.config.Presets;
import org.apache.isis.config.beans.IsisBeanScanInterceptorForSpring;
import org.apache.isis.config.beans.WebAppConfigBean;
+import org.apache.isis.jdo.IsisBootDataNucleus;
import org.apache.isis.jdo.transaction.IsisPlatformTransactionManagerForJdo;
import org.apache.isis.security.shiro.IsisBootSecurityShiro;
import org.apache.isis.viewer.restfulobjects.IsisBootWebRestfulObjects;
@@ -53,7 +54,7 @@ import domainapp.dom.HelloWorldModule;
IsisBootWebRestfulObjects.class,
IsisBootWebWicket.class,
IsisBootSecurityShiro.class,
- IsisPlatformTransactionManagerForJdo.class
+ IsisBootDataNucleus.class,
})
@ComponentScan(
basePackageClasses= {
diff --git a/example/misc/smoketest/src/main/java/org/apache/isis/testdomain/jdo/JdoTestApplication.java b/example/misc/smoketest/src/main/java/org/apache/isis/testdomain/jdo/JdoTestApplication.java
index 000f581..c691ac2 100644
--- a/example/misc/smoketest/src/main/java/org/apache/isis/testdomain/jdo/JdoTestApplication.java
+++ b/example/misc/smoketest/src/main/java/org/apache/isis/testdomain/jdo/JdoTestApplication.java
@@ -22,7 +22,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.apache.isis.runtime.spring.IsisBoot;
-@SpringBootApplication(scanBasePackageClasses= {JdoTestDomainModule.class, IsisBoot.class})
+@SpringBootApplication(scanBasePackageClasses= {JdoTestDomainModule.class})
public class JdoTestApplication {
diff --git a/example/misc/smoketest/src/main/java/org/apache/isis/testdomain/jdo/JdoTestDomainModule.java b/example/misc/smoketest/src/main/java/org/apache/isis/testdomain/jdo/JdoTestDomainModule.java
index 1e7df4d..c05ea79 100644
--- a/example/misc/smoketest/src/main/java/org/apache/isis/testdomain/jdo/JdoTestDomainModule.java
+++ b/example/misc/smoketest/src/main/java/org/apache/isis/testdomain/jdo/JdoTestDomainModule.java
@@ -19,6 +19,12 @@ package org.apache.isis.testdomain.jdo;
import javax.enterprise.inject.Produces;
import javax.inject.Singleton;
+import org.apache.isis.config.Presets;
+import org.apache.isis.config.beans.IsisBeanScanInterceptorForSpring;
+import org.apache.isis.config.beans.WebAppConfigBean;
+import org.apache.isis.jdo.IsisBootDataNucleus;
+import org.apache.isis.runtime.spring.IsisBoot;
+import org.apache.isis.security.IsisBootSecurityBypass;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.ComponentScan.Filter;
@@ -27,17 +33,16 @@ import org.springframework.context.annotation.FilterType;
import org.springframework.context.annotation.Import;
import org.springframework.context.annotation.PropertySource;
import org.springframework.context.annotation.PropertySources;
-import org.apache.isis.config.Presets;
-import org.apache.isis.config.beans.IsisBeanScanInterceptorForSpring;
-import org.apache.isis.config.beans.WebAppConfigBean;
-import org.apache.isis.security.IsisBootSecurityBypass;
@Configuration
-
-@Import({IsisBootSecurityBypass.class})
+@Import({
+ IsisBoot.class,
+ IsisBootSecurityBypass.class,
+ IsisBootDataNucleus.class,
+})
@ComponentScan(
- basePackageClasses= {
- JdoTestDomainModule.class
+ basePackageClasses= {
+ JdoTestDomainModule.class
},
includeFilters= {
@Filter(type = FilterType.CUSTOM, classes= {IsisBeanScanInterceptorForSpring.class})
diff --git a/example/misc/smoketest/src/test/java/org/apache/isis/testdomain/tests/JdoBootstrappingTest.java b/example/misc/smoketest/src/test/java/org/apache/isis/testdomain/tests/JdoBootstrappingTest.java
index 376cf49..0863063 100644
--- a/example/misc/smoketest/src/test/java/org/apache/isis/testdomain/tests/JdoBootstrappingTest.java
+++ b/example/misc/smoketest/src/test/java/org/apache/isis/testdomain/tests/JdoBootstrappingTest.java
@@ -20,7 +20,6 @@ package org.apache.isis.testdomain.tests;
import static org.junit.Assert.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertEquals;
-import static org.junit.jupiter.api.Assertions.assertFalse;
import java.sql.SQLException;
import java.util.HashSet;
@@ -30,8 +29,6 @@ import javax.inject.Inject;
import org.apache.isis.applib.services.repository.RepositoryService;
import org.apache.isis.jdo.transaction.IsisPlatformTransactionManagerForJdo;
-import org.apache.isis.runtime.spring.IsisBoot;
-import org.apache.isis.runtime.system.session.IsisSession;
import org.apache.isis.testdomain.jdo.Book;
import org.apache.isis.testdomain.jdo.Inventory;
import org.apache.isis.testdomain.jdo.JdoTestDomainModule;
@@ -50,7 +47,6 @@ import lombok.val;
@SpringBootTest(
classes = {
- IsisBoot.class,
JdoTestDomainModule.class,
IsisPlatformTransactionManagerForJdo.class,
},