0 Replies Latest reply on Nov 28, 2010 12:22 PM by btayo1

    Unpersistable according to the jbpm.varmapping.xml configuration

    btayo1

      I using Mule 2.2 and jBPM 3.2.7. And at the end of the process during persisting  the variable instance within the process I get the following errors

       

      ERROR 2010-11-28 15:23:41,515 [jBpmConnector.dispatcher.1] org.mule.DefaultExceptionStrategy: Caught exception in Exception Strategy: variable 'incoming' in 'TokenVariableMap20224a' contains 'ACKNOWLEDGED': type 'java.lang.String' is unpersistable according to the jbpm.varmapping.xml configuration

      org.jbpm.JbpmException: variable 'incoming' in 'TokenVariableMap20224a' contains 'ACKNOWLEDGED': type 'java.lang.String' is unpersistable according to the jbpm.varmapping.xml configuration

            at org.jbpm.svc.save.CheckUnpersistableVariablesOperation.save(CheckUnpersistableVariablesOperation.java:61)

            at org.jbpm.svc.Services.save(Services.java:164)

            at org.jbpm.JbpmContext.save(JbpmContext.java:427)

            at org.mule.transport.bpm.jbpm.Jbpm.startProcess(Jbpm.java:152)

            at org.mule.transport.bpm.ProcessMessageDispatcher.processAction(ProcessMessageDispatcher.java:164)

            at org.mule.transport.bpm.ProcessMessageDispatcher.doDispatch(ProcessMessageDispatcher.java:69)

            at org.mule.transport.AbstractMessageDispatcher$Worker.run(AbstractMessageDispatcher.java:262)

            at org.mule.work.WorkerContext.run(WorkerContext.java:310)

            at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)

            at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)

            at java.lang.Thread.run(Unknown Source)

       

       

      **************

       

      why would java.lang.String be an instanceof UnpersistableInstance?

      Where will have defined?

       

      I have reviewed the jbpm.varmapping.xml

       

      PS: i have also updated an existing thread at http://community.jboss.org/message/573273#573273

       

       

      help??

       

       

      Hi All,

       

      Further investigation - i decided to remove all the  variable i have in the context before completing the process - just to  confrim if my process will actuall end.

       

      Bad news - i get the following errors ...

       

      INFO   2010-11-28 16:19:50,015 [jBpmConnector.dispatcher.1]  com.xxx.bpm.actions.RemoveAllVaribaleActionHandler: >>>  container of the  variables{MULE_SESSION=SUQ9NTE4Yzg1ZTQtZmIwYi0xMWRmLTgyYmItODFiZTcyODU0NjA4,  message= order placed!, incoming=ACKNOWLEDGED,  incomingSource=ProductOrderRequest,  productOrderRequest=com.bt.hqns.esb.message.ProductOrder@2219b4,  MULE_ENCODING=UTF-8,  MULE_CORRELATION_ID=518c85e3-fb0b-11df-82bb-81be72854608,  MULE_ENDPOINT=bpm://ProcessProductOrder,  submitWLR3FOStatus=ACKNOWLEDGED,  MULE_ORIGINATING_ENDPOINT=ProductOrderRequest}

      INFO   2010-11-28 16:19:50,015 [jBpmConnector.dispatcher.1]  com.xxx.bpm.actions.RemoveAllVaribaleActionHandler: Removing variable  'MULE_SESSION' with value  'SUQ9NTE4Yzg1ZTQtZmIwYi0xMWRmLTgyYmItODFiZTcyODU0NjA4'

      INFO   2010-11-28 16:19:50,015 [jBpmConnector.dispatcher.1]  com.xxx.bpm.actions.RemoveAllVaribaleActionHandler: Removing variable  'message' with value 'order placed!'

      INFO   2010-11-28 16:19:50,015 [jBpmConnector.dispatcher.1]  com.xxx.bpm.actions.RemoveAllVaribaleActionHandler: Removing variable  'incoming' with value 'ACKNOWLEDGED'

      INFO   2010-11-28 16:19:50,015 [jBpmConnector.dispatcher.1]  com.xxx.bpm.actions.RemoveAllVaribaleActionHandler: Removing variable  'incomingSource' with value 'ProductOrderRequest'

      INFO   2010-11-28 16:19:50,015 [jBpmConnector.dispatcher.1]  com.xxx.bpm.actions.RemoveAllVaribaleActionHandler: Removing variable  'productOrderRequest' with value  'com.bt.hqns.esb.message.ProductOrder@2219b4'

      INFO   2010-11-28 16:19:50,015 [jBpmConnector.dispatcher.1]  com.xxx.bpm.actions.RemoveAllVaribaleActionHandler: Removing variable  'MULE_ENCODING' with value 'UTF-8'

      INFO   2010-11-28 16:19:50,015 [jBpmConnector.dispatcher.1]  com.xxx.bpm.actions.RemoveAllVaribaleActionHandler: Removing variable  'MULE_CORRELATION_ID' with value '518c85e3-fb0b-11df-82bb-81be72854608'

      INFO   2010-11-28 16:19:50,015 [jBpmConnector.dispatcher.1]  com.xxx.bpm.actions.RemoveAllVaribaleActionHandler: Removing variable  'MULE_ENDPOINT' with value 'bpm://ProcessProductOrder'

      INFO   2010-11-28 16:19:50,015 [jBpmConnector.dispatcher.1]  com.xxx.bpm.actions.RemoveAllVaribaleActionHandler: Removing variable  'submitWLR3FOStatus' with value 'ACKNOWLEDGED'

      INFO   2010-11-28 16:19:50,015 [jBpmConnector.dispatcher.1]  com.xxx.bpm.actions.RemoveAllVaribaleActionHandler: Removing variable  'MULE_ORIGINATING_ENDPOINT' with value 'ProductOrderRequest'

      ERROR  2010-11-28 16:19:50,046 [jBpmConnector.dispatcher.1]  org.mule.DefaultExceptionStrategy: Caught exception in Exception  Strategy: instance not of expected entity type:  org.jbpm.context.exe.variableinstance.UnpersistableInstance is not a:  org.jbpm.context.exe.VariableInstance

      org.hibernate.HibernateException:  instance not of expected entity type:  org.jbpm.context.exe.variableinstance.UnpersistableInstance is not a:  org.jbpm.context.exe.VariableInstance

            at org.hibernate.persister.entity.AbstractEntityPersister.getSubclassEntityPersister(AbstractEntityPersister.java:3629)

            at org.hibernate.impl.SessionImpl.getEntityPersister(SessionImpl.java:1347)

            at org.hibernate.engine.ForeignKeys.isTransient(ForeignKeys.java:180)

            at org.hibernate.event.def.AbstractSaveEventListener.getEntityState(AbstractSaveEventListener.java:512)

            at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.performSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:80)

            at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)

            at org.hibernate.impl.SessionImpl.fireSaveOrUpdate(SessionImpl.java:507)

            at org.hibernate.impl.SessionImpl.saveOrUpdate(SessionImpl.java:499)

            at org.hibernate.engine.CascadingAction$1.cascade(CascadingAction.java:218)

            at org.hibernate.engine.Cascade.cascadeToOne(Cascade.java:268)

            at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:216)

            at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:169)

            at org.hibernate.engine.Cascade.cascade(Cascade.java:130)

            at org.hibernate.event.def.AbstractSaveEventListener.cascadeBeforeSave(AbstractSaveEventListener.java:431)

            at org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:265)

            at org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:181)

            at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:107)

            at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:187)

            at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:33)

            at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:172)

            at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:27)

            at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)

            at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:535)

            at org.hibernate.impl.SessionImpl.save(SessionImpl.java:523)

            at org.hibernate.impl.SessionImpl.save(SessionImpl.java:519)

            at org.jbpm.logging.db.DbLoggingService.log(DbLoggingService.java:50)

            at org.jbpm.svc.save.SaveLogsOperation.save(SaveLogsOperation.java:47)

            at org.jbpm.svc.Services.save(Services.java:164)

            at org.jbpm.JbpmContext.save(JbpmContext.java:427)

            at org.mule.transport.bpm.jbpm.Jbpm.startProcess(Jbpm.java:152)

            at org.mule.transport.bpm.ProcessMessageDispatcher.processAction(ProcessMessageDispatcher.java:164)

            at org.mule.transport.bpm.ProcessMessageDispatcher.doDispatch(ProcessMessageDispatcher.java:69)

            at org.mule.transport.AbstractMessageDispatcher$Worker.run(AbstractMessageDispatcher.java:262)

            at org.mule.work.WorkerContext.run(WorkerContext.java:310)

            at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1061)

            at edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:575)

            at java.lang.Thread.run(Unknown Source)

       

      **********************

       

      this definitly looks like a VariableInstance issues

       

      any ideas on how i fix this?

       

      ED