[
https://issues.apache.org/jira/browse/ISIS-2984?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Hao S updated ISIS-2984:
------------------------
Description:
DB: mysql 8
Tested project: Demo App SimpleApp 2.0.0.M7
When this is used:
{code:java}
GenerationType.SEQUENCE{code}
Error:
{code:java}
Caused by: java.lang.IllegalArgumentException: The persistence layer does not
recognize given object of type domainapp.modules.simple.dom.so.SimpleObject,
meaning the object has no identifier that associates it with the persistence
layer. (most likely, because the object is detached, eg. was not persisted
after being new-ed up)
at
org.apache.isis.commons.internal.exceptions._Exceptions.illegalArgument(_Exceptions.java:79)
~[isis-commons-2.0.0-M7.jar:2.0.0-M7]
at
org.apache.isis.persistence.jpa.integration.entity.JpaEntityFacetFactory$JpaEntityFacet.identifierFor(JpaEntityFacetFactory.java:135)
~[isis-persistence-jpa-integration-2.0.0-M7.jar:2.0.0-M7]
at
org.apache.isis.core.metamodel.objectmanager.ObjectManager.autoBookmarked(ObjectManager.java:207)
~[isis-core-metamodel-2.0.0-M7.jar:2.0.0-M7]
at
org.apache.isis.core.metamodel.objectmanager.ObjectManager.adapt(ObjectManager.java:158)
~[isis-core-metamodel-2.0.0-M7.jar:2.0.0-M7]
at
org.apache.isis.core.metamodel.objectmanager.ObjectManager.adapt(ObjectManager.java:130)
~[isis-core-metamodel-2.0.0-M7.jar:2.0.0-M7]
at
org.apache.isis.persistence.jpa.applib.integration.IsisEntityListener.onPrePersist(IsisEntityListener.java:73)
~[isis-persistence-jpa-applib-2.0.0-M7.jar:2.0.0-M7]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[?:?]
at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:?]
at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at
org.eclipse.persistence.internal.security.PrivilegedAccessHelper.invokeMethod(PrivilegedAccessHelper.java:530)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.internal.jpa.metadata.listeners.EntityListener.invokeMethod(EntityListener.java:322)
~[org.eclipse.persistence.jpa-2.7.10.jar:?]
at
org.eclipse.persistence.internal.jpa.metadata.listeners.EntityListener.invokeMethod(EntityListener.java:346)
~[org.eclipse.persistence.jpa-2.7.10.jar:?]
at
org.eclipse.persistence.internal.jpa.metadata.listeners.EntityListener.prePersist(EntityListener.java:453)
~[org.eclipse.persistence.jpa-2.7.10.jar:?]
at
org.eclipse.persistence.descriptors.DescriptorEventManager.notifyListener(DescriptorEventManager.java:746)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.descriptors.DescriptorEventManager.notifyEJB30Listeners(DescriptorEventManager.java:672)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.descriptors.DescriptorEventManager.executeEvent(DescriptorEventManager.java:233)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNewObjectClone(UnitOfWorkImpl.java:4468)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNotRegisteredNewObjectForPersist(UnitOfWorkImpl.java:4445)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.registerNotRegisteredNewObjectForPersist(RepeatableWriteUnitOfWork.java:523)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNewObjectForPersist(UnitOfWorkImpl.java:4387)
~[org.eclipse.persistence.core-2.7.10.jar:?]{code}
Basically the entity does not get a auto-generated primary key. This worked
before in 2.0.0.M6
Thanks!
was:
DB: mysql 8
Tested project: Demo App SimpleApp, 2.0.0.M7
When this is used:
{code:java}
GenerationType.SEQUENCE{code}
Error:
{code:java}
Caused by: java.lang.IllegalArgumentException: The persistence layer does not
recognize given object of type domainapp.modules.simple.dom.so.SimpleObject,
meaning the object has no identifier that associates it with the persistence
layer. (most likely, because the object is detached, eg. was not persisted
after being new-ed up)
at
org.apache.isis.commons.internal.exceptions._Exceptions.illegalArgument(_Exceptions.java:79)
~[isis-commons-2.0.0-M7.jar:2.0.0-M7]
at
org.apache.isis.persistence.jpa.integration.entity.JpaEntityFacetFactory$JpaEntityFacet.identifierFor(JpaEntityFacetFactory.java:135)
~[isis-persistence-jpa-integration-2.0.0-M7.jar:2.0.0-M7]
at
org.apache.isis.core.metamodel.objectmanager.ObjectManager.autoBookmarked(ObjectManager.java:207)
~[isis-core-metamodel-2.0.0-M7.jar:2.0.0-M7]
at
org.apache.isis.core.metamodel.objectmanager.ObjectManager.adapt(ObjectManager.java:158)
~[isis-core-metamodel-2.0.0-M7.jar:2.0.0-M7]
at
org.apache.isis.core.metamodel.objectmanager.ObjectManager.adapt(ObjectManager.java:130)
~[isis-core-metamodel-2.0.0-M7.jar:2.0.0-M7]
at
org.apache.isis.persistence.jpa.applib.integration.IsisEntityListener.onPrePersist(IsisEntityListener.java:73)
~[isis-persistence-jpa-applib-2.0.0-M7.jar:2.0.0-M7]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[?:?]
at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
~[?:?]
at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at
org.eclipse.persistence.internal.security.PrivilegedAccessHelper.invokeMethod(PrivilegedAccessHelper.java:530)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.internal.jpa.metadata.listeners.EntityListener.invokeMethod(EntityListener.java:322)
~[org.eclipse.persistence.jpa-2.7.10.jar:?]
at
org.eclipse.persistence.internal.jpa.metadata.listeners.EntityListener.invokeMethod(EntityListener.java:346)
~[org.eclipse.persistence.jpa-2.7.10.jar:?]
at
org.eclipse.persistence.internal.jpa.metadata.listeners.EntityListener.prePersist(EntityListener.java:453)
~[org.eclipse.persistence.jpa-2.7.10.jar:?]
at
org.eclipse.persistence.descriptors.DescriptorEventManager.notifyListener(DescriptorEventManager.java:746)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.descriptors.DescriptorEventManager.notifyEJB30Listeners(DescriptorEventManager.java:672)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.descriptors.DescriptorEventManager.executeEvent(DescriptorEventManager.java:233)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNewObjectClone(UnitOfWorkImpl.java:4468)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNotRegisteredNewObjectForPersist(UnitOfWorkImpl.java:4445)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.registerNotRegisteredNewObjectForPersist(RepeatableWriteUnitOfWork.java:523)
~[org.eclipse.persistence.core-2.7.10.jar:?]
at
org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNewObjectForPersist(UnitOfWorkImpl.java:4387)
~[org.eclipse.persistence.core-2.7.10.jar:?]{code}
Basically the entity does not get a auto-generated primary key. This worked
before in 2.0.0.M6
Thanks!
> @GeneratedValue(strategy = GenerationType.SEQUENCE) no longer works after
> migrating to 2.0.0.M7
> -----------------------------------------------------------------------------------------------
>
> Key: ISIS-2984
> URL: https://issues.apache.org/jira/browse/ISIS-2984
> Project: Isis
> Issue Type: Bug
> Components: Isis Persistence JPA
> Affects Versions: 2.0.0-M7
> Reporter: Hao S
> Priority: Major
>
> DB: mysql 8
> Tested project: Demo App SimpleApp 2.0.0.M7
> When this is used:
> {code:java}
> GenerationType.SEQUENCE{code}
> Error:
> {code:java}
> Caused by: java.lang.IllegalArgumentException: The persistence layer does not
> recognize given object of type domainapp.modules.simple.dom.so.SimpleObject,
> meaning the object has no identifier that associates it with the persistence
> layer. (most likely, because the object is detached, eg. was not persisted
> after being new-ed up)
> at
> org.apache.isis.commons.internal.exceptions._Exceptions.illegalArgument(_Exceptions.java:79)
> ~[isis-commons-2.0.0-M7.jar:2.0.0-M7]
> at
> org.apache.isis.persistence.jpa.integration.entity.JpaEntityFacetFactory$JpaEntityFacet.identifierFor(JpaEntityFacetFactory.java:135)
> ~[isis-persistence-jpa-integration-2.0.0-M7.jar:2.0.0-M7]
> at
> org.apache.isis.core.metamodel.objectmanager.ObjectManager.autoBookmarked(ObjectManager.java:207)
> ~[isis-core-metamodel-2.0.0-M7.jar:2.0.0-M7]
> at
> org.apache.isis.core.metamodel.objectmanager.ObjectManager.adapt(ObjectManager.java:158)
> ~[isis-core-metamodel-2.0.0-M7.jar:2.0.0-M7]
> at
> org.apache.isis.core.metamodel.objectmanager.ObjectManager.adapt(ObjectManager.java:130)
> ~[isis-core-metamodel-2.0.0-M7.jar:2.0.0-M7]
> at
> org.apache.isis.persistence.jpa.applib.integration.IsisEntityListener.onPrePersist(IsisEntityListener.java:73)
> ~[isis-persistence-jpa-applib-2.0.0-M7.jar:2.0.0-M7]
> at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> ~[?:?]
> at
> jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> ~[?:?]
> at
> jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> ~[?:?]
> at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
> at
> org.eclipse.persistence.internal.security.PrivilegedAccessHelper.invokeMethod(PrivilegedAccessHelper.java:530)
> ~[org.eclipse.persistence.core-2.7.10.jar:?]
> at
> org.eclipse.persistence.internal.jpa.metadata.listeners.EntityListener.invokeMethod(EntityListener.java:322)
> ~[org.eclipse.persistence.jpa-2.7.10.jar:?]
> at
> org.eclipse.persistence.internal.jpa.metadata.listeners.EntityListener.invokeMethod(EntityListener.java:346)
> ~[org.eclipse.persistence.jpa-2.7.10.jar:?]
> at
> org.eclipse.persistence.internal.jpa.metadata.listeners.EntityListener.prePersist(EntityListener.java:453)
> ~[org.eclipse.persistence.jpa-2.7.10.jar:?]
> at
> org.eclipse.persistence.descriptors.DescriptorEventManager.notifyListener(DescriptorEventManager.java:746)
> ~[org.eclipse.persistence.core-2.7.10.jar:?]
> at
> org.eclipse.persistence.descriptors.DescriptorEventManager.notifyEJB30Listeners(DescriptorEventManager.java:672)
> ~[org.eclipse.persistence.core-2.7.10.jar:?]
> at
> org.eclipse.persistence.descriptors.DescriptorEventManager.executeEvent(DescriptorEventManager.java:233)
> ~[org.eclipse.persistence.core-2.7.10.jar:?]
> at
> org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNewObjectClone(UnitOfWorkImpl.java:4468)
> ~[org.eclipse.persistence.core-2.7.10.jar:?]
> at
> org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNotRegisteredNewObjectForPersist(UnitOfWorkImpl.java:4445)
> ~[org.eclipse.persistence.core-2.7.10.jar:?]
> at
> org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.registerNotRegisteredNewObjectForPersist(RepeatableWriteUnitOfWork.java:523)
> ~[org.eclipse.persistence.core-2.7.10.jar:?]
> at
> org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.registerNewObjectForPersist(UnitOfWorkImpl.java:4387)
> ~[org.eclipse.persistence.core-2.7.10.jar:?]{code}
> Basically the entity does not get a auto-generated primary key. This worked
> before in 2.0.0.M6
> Thanks!
--
This message was sent by Atlassian Jira
(v8.20.1#820001)