Hi.
I got problem with inserting in tables with equals primary key ID. Database generate that ID.
example:
MAIN_TABLE SUBTABLE
id--------- = id
name1 param
name1 ...
...
Main Table:
@Entity
@Table(name = "MAIN_TABLE", schema = "SCH")
@Inheritance(strategy=InheritanceType.JOINED)
public class MainClass extends SuperClass {
@Id
@Column(insertable = false)
@GeneratedValue(strategy=GenerationType.IDENTITY)
public Integer id;
public Integer getId() {
return id;
}
public void setId(Integer theId) {
id = theId;
}
...
}
-----------------
Subtable
@Entity
@Embeddable
@Table(name = "SUBTABLE", schema = "SCH")
@PrimaryKeyJoinColumn(name="ID")
public class SubtableClass extends MainClass {
@Column(name = "param", length = 16)
public String param;
...
}
--------------
....
MainClass mc = new MainClass();
mc.setName1("name1");
EntityManager em = null;
...// Inset into MAIN_TABLE and it is OK
try {
mc = em.merge(mc);
em.flush();
} finally {
if (em != null) {
em.close();
}
}
// INSERT INTO SUBTABLE
SubtableClass sc = new SubtableClass();
sc.setId(mc.getId());
try {
sc = em.merge(sc);
em.flush();
} finally {
if (em != null) {
em.close();
}
}
The Error is:
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R <openjpa-1.0.2-r420667:627158 nonfatal general error> org.apache.openjpa.persistence.PersistenceException: null
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at org.apache.openjpa.kernel.BrokerImpl.attach(BrokerImpl.java:3167)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at org.apache.openjpa.kernel.DelegatingBroker.attach(DelegatingBroker.java:1142)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at org.apache.openjpa.persistence.EntityManagerImpl.merge(EntityManagerImpl.java:665)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at MyClassTest.InsertIntoTables(InsertIntoTables.java:66)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at java.lang.reflect.Method.invoke(Method.java:618)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.java.handler.JavaReflectionAdapter$2.run(JavaReflectionAdapter.java:152)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at java.security.AccessController.doPrivileged(AccessController.java:197)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.java.handler.JavaReflectionAdapter.invoke(JavaReflectionAdapter.java:149)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.java.handler.JavaImplementationHandler.invokeSync(JavaImplementationHandler.java:447)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.java.handler.JavaImplementationHandler.processMessage(JavaImplementationHandler.java:195)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessageWithPCI(MessageDispatcherImpl.java:714)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1166)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:821)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processUOWMessage(ModuleSessionBean.java:338)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.transactionRequiredActivitySessionNotSupported(ModuleSessionBean.java:311)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.transactionRequiredActivitySessionNotSupported(EJSLocalStatelessModule_43132892.java:233)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.uow.handler.UOWStrategyImpl.transactionGlobalActivitySessionFalse(UOWStrategyImpl.java:311)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.uow.handler.JoinUOWHandler.processMessage(JoinUOWHandler.java:165)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessageWithPCI(MessageDispatcherImpl.java:725)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1166)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:812)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processMessage(ModuleSessionBean.java:149)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.processMessage(EJSLocalStatelessModule_43132892.java:97)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.controller.invocation.impl.AdhocInvoker.processMessage(Unknown Source)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.controller.invocation.impl.Invoker.managedInvoke(Unknown Source)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.controller.invocation.impl.Invoker.invoke(Unknown Source)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.controller.invocation.impl.BaseInvocationHandler.invoke(Unknown Source)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager.doInvoke(Unknown Source)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager$1.run(Unknown Source)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at java.security.AccessController.doPrivileged(AccessController.java:219)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at javax.security.auth.Subject.doAs(Subject.java:495)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:118)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager.invoke(Unknown Source)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.controller.command.impl.BaseInteractiveEventHandler.processEvent(Unknown Source)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.controller.command.impl.BaseCommandHandler.doCommand(Unknown Source)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.controller.command.impl.CommandProcessor.doCommand(Unknown Source)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.controller.command.impl.CommandProcessor.doCommand(Unknown Source)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.servlet.TestControllerServlet.process(TestControllerServlet.java:76)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.wbit.comptest.servlet.TestControllerServlet.doPost(TestControllerServlet.java:51)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:995)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:501)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:464)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:744)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1455)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:113)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:454)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:383)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:263)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:743)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R Caused by: java.lang.NullPointerException
at org.apache.openjpa.kernel.StateManagerImpl.loadField(StateManagerImpl.java:2932)
at org.apache.openjpa.kernel.StateManagerImpl.fetchStringField(StateManagerImpl.java:2257)
at org.apache.openjpa.kernel.AttachStrategy.attachField(AttachStrategy.java:157)
at org.apache.openjpa.kernel.VersionAttachStrategy.attach(VersionAttachStrategy.java:164)
at org.apache.openjpa.kernel.AttachManager.attach(AttachManager.java:241)
at org.apache.openjpa.kernel.AttachManager.attach(AttachManager.java:101)
at org.apache.openjpa.kernel.BrokerImpl.attach(BrokerImpl.java:3160)
at org.apache.openjpa.kernel.DelegatingBroker.attach(DelegatingBroker.java:1142)
at org.apache.openjpa.persistence.EntityManagerImpl.merge(EntityManagerImpl.java:665)
at MyClassTest.InsertIntoTables(InsertIntoTables.java:66)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ws.sca.internal.java.handler.JavaReflectionAdapter$2.run(JavaReflectionAdapter.java:152)
at java.security.AccessController.doPrivileged(AccessController.java:197)
at com.ibm.ws.sca.internal.java.handler.JavaReflectionAdapter.invoke(JavaReflectionAdapter.java:149)
at com.ibm.ws.sca.internal.java.handler.JavaImplementationHandler.invokeSync(JavaImplementationHandler.java:447)
at com.ibm.ws.sca.internal.java.handler.JavaImplementationHandler.processMessage(JavaImplementationHandler.java:195)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessageWithPCI(MessageDispatcherImpl.java:714)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1166)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:821)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processUOWMessage(ModuleSessionBean.java:338)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.transactionRequiredActivitySessionNotSupported(ModuleSessionBean.java:311)
at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.transactionRequiredActivitySessionNotSupported(EJSLocalStatelessModule_43132892.java:233)
at com.ibm.ws.sca.internal.uow.handler.UOWStrategyImpl.transactionGlobalActivitySessionFalse(UOWStrategyImpl.java:311)
at com.ibm.ws.sca.internal.uow.handler.JoinUOWHandler.processMessage(JoinUOWHandler.java:165)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessageWithPCI(MessageDispatcherImpl.java:725)
at com.ibm.ws.sca.internal.message.impl.MessageDispatcherImpl.processMessage(MessageDispatcherImpl.java:1166)
at com.ibm.ws.sca.internal.message.impl.ManagedMessageImpl.process(ManagedMessageImpl.java:812)
at com.ibm.wsspi.sca.ejb.module.impl.ModuleSessionBean.processMessage(ModuleSessionBean.java:149)
at com.ibm.wsspi.sca.ejb.module.EJSLocalStatelessModule_43132892.processMessage(EJSLocalStatelessModule_43132892.java:97)
at com.ibm.wbit.comptest.controller.invocation.impl.AdhocInvoker.processMessage(Unknown Source)
at com.ibm.wbit.comptest.controller.invocation.impl.Invoker.managedInvoke(Unknown Source)
at com.ibm.wbit.comptest.controller.invocation.impl.Invoker.invoke(Unknown Source)
at com.ibm.wbit.comptest.controller.invocation.impl.BaseInvocationHandler.invoke(Unknown Source)
at com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager.doInvoke(Unknown Source)
at com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(AccessController.java:219)
at javax.security.auth.Subject.doAs(Subject.java:495)
at com.ibm.websphere.security.auth.WSSubject.doAs(WSSubject.java:118)
at com.ibm.wbit.comptest.controller.invocation.impl.InvocationManager.invoke(Unknown Source)
at com.ibm.wbit.comptest.controller.command.impl.BaseInteractiveEventHandler.processEvent(Unknown Source)
at com.ibm.wbit.comptest.controller.command.impl.BaseCommandHandler.doCommand(Unknown Source)
at com.ibm.wbit.comptest.controller.command.impl.CommandProcessor.doCommand(Unknown Source)
at com.ibm.wbit.comptest.controller.command.impl.CommandProcessor.doCommand(Unknown Source)
at com.ibm.wbit.comptest.servlet.TestControllerServlet.process(TestControllerServlet.java:76)
at com.ibm.wbit.comptest.servlet.TestControllerServlet.doPost(TestControllerServlet.java:51)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:995)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:501)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:464)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:744)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1455)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:113)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:454)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:383)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:263)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:743)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1469)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at org.apache.openjpa.kernel.StateManagerImpl.loadField(StateManagerImpl.java:2932)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at org.apache.openjpa.kernel.StateManagerImpl.fetchStringField(StateManagerImpl.java:2257)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at org.apache.openjpa.kernel.AttachStrategy.attachField(AttachStrategy.java:157)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at org.apache.openjpa.kernel.VersionAttachStrategy.attach(VersionAttachStrategy.java:164)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at org.apache.openjpa.kernel.AttachManager.attach(AttachManager.java:241)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at org.apache.openjpa.kernel.AttachManager.attach(AttachManager.java:101)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R at org.apache.openjpa.kernel.BrokerImpl.attach(BrokerImpl.java:3160)
[2008.06.16 09:39:44:312 CEST] 00000086 SystemErr R ... 64 more
[Message sent by forum member 'du27177' (du27177)]
http://forums.java.net/jive/thread.jspa?messageID=280446