[JBoss jBPM] - JBpm 3.2 : Version column
by viniciuscarvalho
Hello there! Well, never surrender...
I'm still trying to get jbpm 3.2 and seam 1.2.1, so what I've done is create an MBean (since it seems that the jndi jbpmconfiguration is not present on the 3.2) and registred my jbpmconfiguration inside jndi. Working fine.
inside my action I have:
| JbpmContext ctx = null;
| try {
| InitialContext initialContext = new InitialContext();
|
| jbpmConfig = (JbpmConfiguration)initialContext.lookup("java:/jbpm/JbpmConfiguration");
| } catch (NamingException e) {
| e.printStackTrace();
| }
| ctx = jbpmConfig.createJbpmContext();
| ProcessInstance instance = ctx.newProcessInstance("myProcess");
| ctx.save(instance);
| ctx.close();
|
Problem is I'm getting an error complaining that the VERSION_ column of table JBPM_MODULEINSTANCE can not be null.
I've double checked my jars, and I'm using the 3.2 jars, the ContextInstance.hbm.xml is extending ModuleInstance which have a tag set.
Why is still complaining?
Regards
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4040336#4040336
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4040336
19 years
[EJB 3.0] - detached entity passed to persist
by graflaszlo
Hi all,
I have an entity, named AdatlapElozetesR, wich looks like this:
| package mypackage;
|
| import java.util.*;
| import javax.persistence.*;
|
| @Entity
| @Table(name = "ADATLAPELOZETESR", uniqueConstraints = {})
| public class AdatlapElozetesR implements java.io.Serializable {
|
| private static final long serialVersionUID = -7341044940631282534L;
| private Integer id;
| private Date datum;
|
| public AdatlapElozetesR() { }
|
| public AdatlapElozetesR(Integer id,
| Date datum) {
| this.id = id;
| this.datum = datum;
| }
|
| public AdatlapElozetesR(AdatlapElozetesR p_adatlapelozetesr) {
| this.id = p_adatlapelozetesr.getId();
| this.datum = p_adatlapelozetesr.getDatum();
| }
|
| @Id
| @Column(name = "id", unique = true, nullable = false, insertable = true, updatable = true)
| @SequenceGenerator(name="SQC_ALE", sequenceName="ADAT.SQ_ADATLAP_ELOZETES", allocationSize=1)
| @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SQC_ALE")
| public Integer getId() { return this.id; }
| public void setId(Integer id) { this.id = id; }
|
| @Temporal(TemporalType.DATE)
| @Column(name = "datum", unique = false, nullable = false, insertable = true, updatable = true, length = 13)
| public Date getDatum() { return this.datum; }
| public void setDatum(Date datum) { this.datum = datum; }
|
| }
|
To manage this entity I use a session bean:
| package mypackage.adat;
|
| import java.sql.*;
| import java.text.Format;
| import java.text.SimpleDateFormat;
| import java.util.*;
| import javax.ejb.Stateless;
| import javax.ejb.TransactionAttribute;
| import javax.ejb.TransactionAttributeType;
| import javax.naming.InitialContext;
| import javax.sql.DataSource;
| import javax.persistence.EntityManager;
| import javax.persistence.PersistenceContext;
| import javax.persistence.Query;
| import org.apache.log4j.*;
| import org.hibernate.*;
| import org.hibernate.cfg.*;
|
| import mypackage.AdatlapElozetesR;
|
| @Stateless
| public class AdatlapElozetesRBean implements AdatlapElozetesRRemote, AdatlapElozetesRLocal, java.io.Serializable {
|
| private static final Logger log = Logger.getLogger(AdatlapElozetesRBean.class);
| @PersistenceContext(unitName="persistUniter")
| private EntityManager em;
|
| public void persist(AdatlapElozetesR transientInstance) {
| //AdatlapElozetesR n = new AdatlapElozetesR(transientInstance);
| System.out.println((transientInstance == null ? "transientInstance NULL" :"transientInstance OK, "+transientInstance));
| try {
| em.persist(transientInstance);
| log.debug("persist successful");
| } catch (RuntimeException re) {
| log.error("persist failed", re);
| throw re;
| }
| }
|
| ...
| }
|
And my test client looks like this:
| package mypackage.test;
|
| import java.util.*;
| import javax.naming.InitialContext;
|
| import org.hibernate.*;
| import org.hibernate.cfg.*;
|
| import mypackage.adat.*;
| import mypackage.*;
|
| public class AdatlapElozetesRTest {
|
| AdatlapElozetesRTest() {
| System.out.println("AdatlapElozetesRTest()");
| }
| private void CreateAdatlapElozetesR() {
| System.out.println("CreateAdatlapElozetesR()");
| AdatlapElozetesR ale = new AdatlapElozetesR(new Integer(0),
| new Date());
| System.out.println((ale == null ? "ale NULL" : "ale OK"));
| try {
| Properties properties = new Properties();
| properties.setProperty("java.naming.provider.url", "jnp://localhost:1099");
| properties.setProperty("java.naming.factory.url.pkgs", "org.jboss.naming");
| properties.setProperty("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");
| InitialContext ctx = new InitialContext( properties );
| AdatlapElozetesRInterface aei = (AdatlapElozetesRInterface)ctx.lookup("AdatlapElozetesRBean/remote");
| System.out.println((aei == null ? "aei NULL" : "aei OK"));
| aei.persist(ale);
| } catch(org.hibernate.PersistentObjectException poex) {
| System.out.println("feliras()\n"+poex);
| //ex.printStackTrace();
| } catch(Exception ex) {
| System.out.println("feliras()\n"+ex);
| //ex.printStackTrace();
| }
| }
| public static void main(String[] args) {
| AdatlapElozetesRTest t1 = new AdatlapElozetesRTest();
| t1.CreateAdatlapElozetesR();
| t1 = null;
| }
| }
|
When I run the client, to insert a new row in my table I get this error:
| 21:47:37,032 INFO [STDOUT] transientInstance OK, mypackage.adat.AdatlapElozetes@80d11b
| 21:47:37,032 ERROR [AdatlapElozetesBean] persist failed
| javax.persistence.PersistenceException: org.hibernate.PersistentObjectException: detached entity passed to persist: mypackage.adat.AdatlapElozetes
| at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:647)
| at org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:218)
| at org.jboss.ejb3.entity.TransactionScopedEntityManager.persist(TransactionScopedEntityManager.java:175)
| at mypackage.adat.AdatlapElozetesBean.persist(AdatlapElozetesBean.java:47)
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:597)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
| at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
| at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:46)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
| at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
| at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:102)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.stateless.StatelessContainer.dynamicInvoke(StatelessContainer.java:263)
| at org.jboss.aop.Dispatcher.invoke(Dispatcher.java:106)
| at org.jboss.aspects.remoting.AOPRemotingInvocationHandler.invoke(AOPRemotingInvocationHandler.java:82)
| at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:828)
| at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:681)
| at org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:358)
| at org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:398)
| at org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:239)
| Caused by: org.hibernate.PersistentObjectException: detached entity passed to persist: mypackage.adat.AdatlapElozetes
| at org.hibernate.event.def.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:79)
| at org.hibernate.event.def.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:38)
| at org.hibernate.impl.SessionImpl.firePersist(SessionImpl.java:618)
| at org.hibernate.impl.SessionImpl.persist(SessionImpl.java:592)
| at org.hibernate.impl.SessionImpl.persist(SessionImpl.java:596)
| at org.hibernate.ejb.AbstractEntityManagerImpl.persist(AbstractEntityManagerImpl.java:212)
| ... 36 more
|
Can somebody help me, to fix this problem?
Thank you.
My configuration is:
Windows XP,
Java VM: Java HotSpot(TM) Server VM 1.6.0_01-b06,Sun Microsystems Inc.
PostgreSQL 8.2
JBoss [Zion] 4.0.5.GA (build: CVSTag=Branch_4_0 date=200610162339)
Hibernate 3.2.0.ga
Hibernate EntityManager 3.2.0.GA
Hibernate Annotations 3.2.0.GA
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4040333#4040333
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4040333
19 years