Kuali Rice Development
  1. Kuali Rice Development
  2. KULRICE-11905

Unable to copy document types - documents go into exception; doc title incorrect when copying multiple types of docs

    Details

    • Type: Bug Fix Bug Fix
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.4
    • Component/s: Development
    • Security Level: Public (Public: Anyone can view)
    • Labels:
      None
    • Similar issues:
      KULRICE-12273Document Type lookup caches results incorrectly
      KULRICE-9199Unable to inactivate roles of type unitHierarchy or unit from person maintenance docs
      KULRICE-12248DocumentSearchGeneratorImpl#getSearchableAttributeSql does not handle searchable attributes well if document type changes
      KULRICE-1420Doc Search - clicking Parent Document search on Document Type look up goes to the same Doc Type look up screen.
      KULRICE-8461Document Type edit where the doc type has application document statuses routes to exception
      KULRICE-3565Copied Req Docs have Attachment Problems
      KULRICE-4497If no "Resolve Exception" responsibility is defined for a particular document type (or one of it's parents) then the document will silently fail to go into exception routing
      KULRICE-3238Doc Search building criteria and additional fields using doc type hierarchy
      KULRICE-4516KimDocumentRoleMemberLookupableHelperServiceImpl confused by multiple docs
      KULRICE-8644When trying to copy certain permissions, doc gets stuck 'Enroute'
    • Rice Module:
      KEW
    • Sprint:
      2.4.0-rc1 Sprint 2
    • KAI Review Status:
      Not Required
    • KTI Review Status:
      Not Required
    • Code Review Status:
      Not Required
    • Include in Release Notes?:
      Yes

      Description

      When copying document types, it is treated like an edit - The document title says "Edit DocumentType - ..." and then it eventually goes into exception.

      Error -

      2014-02-19 14:11:25,029 [TRAVEL/KSB-pool-1-thread-3] u:admin/d:3166 INFO  org.kuali.rice.krad.maintenance.MaintenanceUtils - starting checkForLockingDocument (by MaintenanceDocument)
      2014-02-19 14:11:25,056 [TRAVEL/KSB-pool-1-thread-3] u:admin/d:3166 FATAL org.kuali.rice.core.framework.persistence.jta.KualiTransactionInterceptor - Exception caught by Transaction Interceptor, this will cause a rollback at the end of the transaction.
      org.springframework.orm.jpa.JpaOptimisticLockingFailureException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType; nested exception is javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:310)
      	at org.springframework.orm.jpa.DefaultJpaDialect.translateExceptionIfPossible(DefaultJpaDialect.java:121)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:403)
      	at org.kuali.rice.krad.data.jpa.KradEntityManagerFactoryBean.translateExceptionIfPossible(KradEntityManagerFactoryBean.java:386)
      	at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:58)
      	at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:213)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:266)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.save(JpaPersistenceProvider.java:129)
      	at sun.reflect.GeneratedMethodAccessor720.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy40.save(Unknown Source)
      	at org.kuali.rice.krad.data.provider.impl.ProviderBasedDataObjectService.save(ProviderBasedDataObjectService.java:111)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.save(DocumentTypeServiceImpl.java:173)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.versionAndSave(DocumentTypeServiceImpl.java:134)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy177.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	at org.kuali.rice.kew.document.DocumentTypeMaintainable.saveBusinessObject(DocumentTypeMaintainable.java:121)
      	at org.kuali.rice.kns.maintenance.KualiMaintainableImpl.saveDataObject(KualiMaintainableImpl.java:321)
      	at org.kuali.rice.krad.maintenance.MaintenanceDocumentBase.doRouteStatusChange(MaintenanceDocumentBase.java:544)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:80)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:62)
      	at org.kuali.rice.krad.util.GlobalVariables.doInNewGlobalVariables(GlobalVariables.java:204)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doInContext(PostProcessorServiceImpl.java:393)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doRouteStatusChange(PostProcessorServiceImpl.java:62)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy96.doRouteStatusChange(Unknown Source)
      	at org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor.doRouteStatusChange(KualiPostProcessor.java:56)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.notifyPostProcessor(StandardWorkflowEngine.java:491)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.nodePostProcess(StandardWorkflowEngine.java:401)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.process(StandardWorkflowEngine.java:148)
      	at org.kuali.rice.kew.engine.BlanketApproveEngine.process(BlanketApproveEngine.java:139)
      	at org.kuali.rice.kew.actions.BlanketApproveAction.performDeferredBlanketApproveWork(BlanketApproveAction.java:198)
      	at org.kuali.rice.kew.impl.action.DocumentOrchestrationQueueImpl.orchestrateDocument(DocumentOrchestrationQueueImpl.java:66)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy188.orchestrateDocument(Unknown Source)
      	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.kuali.rice.ksb.messaging.MessageServiceInvoker.invokeService(MessageServiceInvoker.java:157)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker$1.doInTransaction(MessageServiceInvoker.java:72)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker.run(MessageServiceInvoker.java:67)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:544)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.merge(EntityManagerImpl.java:519)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:366)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:241)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$1.call(JpaPersistenceProvider.java:136)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:263)
      	... 107 more
      Caused by: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.exceptions.OptimisticLockException.objectChangedSinceLastMerge(OptimisticLockException.java:152)
      	at org.eclipse.persistence.internal.sessions.MergeManager.checkNewObjectLockVersion(MergeManager.java:1114)
      	at org.eclipse.persistence.internal.sessions.MergeManager.registerObjectForMergeCloneIntoWorkingCopy(MergeManager.java:1086)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChangesOfCloneIntoWorkingCopy(MergeManager.java:557)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChanges(MergeManager.java:313)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3521)
      	at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.mergeCloneWithReferences(RepeatableWriteUnitOfWork.java:384)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3481)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:542)
      	... 120 more
      2014-02-19 14:11:25,063 [TRAVEL/KSB-pool-1-thread-3] u:admin/d:3166 FATAL org.kuali.rice.core.framework.persistence.jta.KualiTransactionInterceptor - Exception caught by Transaction Interceptor, this will cause a rollback at the end of the transaction.
      org.springframework.orm.jpa.JpaOptimisticLockingFailureException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType; nested exception is javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:310)
      	at org.springframework.orm.jpa.DefaultJpaDialect.translateExceptionIfPossible(DefaultJpaDialect.java:121)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:403)
      	at org.kuali.rice.krad.data.jpa.KradEntityManagerFactoryBean.translateExceptionIfPossible(KradEntityManagerFactoryBean.java:386)
      	at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:58)
      	at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:213)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:266)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.save(JpaPersistenceProvider.java:129)
      	at sun.reflect.GeneratedMethodAccessor720.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy40.save(Unknown Source)
      	at org.kuali.rice.krad.data.provider.impl.ProviderBasedDataObjectService.save(ProviderBasedDataObjectService.java:111)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.save(DocumentTypeServiceImpl.java:173)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.versionAndSave(DocumentTypeServiceImpl.java:134)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy177.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	at org.kuali.rice.kew.document.DocumentTypeMaintainable.saveBusinessObject(DocumentTypeMaintainable.java:121)
      	at org.kuali.rice.kns.maintenance.KualiMaintainableImpl.saveDataObject(KualiMaintainableImpl.java:321)
      	at org.kuali.rice.krad.maintenance.MaintenanceDocumentBase.doRouteStatusChange(MaintenanceDocumentBase.java:544)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:80)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:62)
      	at org.kuali.rice.krad.util.GlobalVariables.doInNewGlobalVariables(GlobalVariables.java:204)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doInContext(PostProcessorServiceImpl.java:393)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doRouteStatusChange(PostProcessorServiceImpl.java:62)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy96.doRouteStatusChange(Unknown Source)
      	at org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor.doRouteStatusChange(KualiPostProcessor.java:56)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.notifyPostProcessor(StandardWorkflowEngine.java:491)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.nodePostProcess(StandardWorkflowEngine.java:401)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.process(StandardWorkflowEngine.java:148)
      	at org.kuali.rice.kew.engine.BlanketApproveEngine.process(BlanketApproveEngine.java:139)
      	at org.kuali.rice.kew.actions.BlanketApproveAction.performDeferredBlanketApproveWork(BlanketApproveAction.java:198)
      	at org.kuali.rice.kew.impl.action.DocumentOrchestrationQueueImpl.orchestrateDocument(DocumentOrchestrationQueueImpl.java:66)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy188.orchestrateDocument(Unknown Source)
      	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.kuali.rice.ksb.messaging.MessageServiceInvoker.invokeService(MessageServiceInvoker.java:157)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker$1.doInTransaction(MessageServiceInvoker.java:72)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker.run(MessageServiceInvoker.java:67)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:544)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.merge(EntityManagerImpl.java:519)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:366)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:241)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$1.call(JpaPersistenceProvider.java:136)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:263)
      	... 107 more
      Caused by: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.exceptions.OptimisticLockException.objectChangedSinceLastMerge(OptimisticLockException.java:152)
      	at org.eclipse.persistence.internal.sessions.MergeManager.checkNewObjectLockVersion(MergeManager.java:1114)
      	at org.eclipse.persistence.internal.sessions.MergeManager.registerObjectForMergeCloneIntoWorkingCopy(MergeManager.java:1086)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChangesOfCloneIntoWorkingCopy(MergeManager.java:557)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChanges(MergeManager.java:313)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3521)
      	at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.mergeCloneWithReferences(RepeatableWriteUnitOfWork.java:384)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3481)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:542)
      	... 120 more
      2014-02-19 14:11:25,065 [TRAVEL/KSB-pool-1-thread-3] u:admin/d:3166 ERROR org.kuali.rice.krad.service.impl.PostProcessorServiceImpl - caught exception while handling route status change
      org.springframework.orm.jpa.JpaOptimisticLockingFailureException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType; nested exception is javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:310)
      	at org.springframework.orm.jpa.DefaultJpaDialect.translateExceptionIfPossible(DefaultJpaDialect.java:121)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:403)
      	at org.kuali.rice.krad.data.jpa.KradEntityManagerFactoryBean.translateExceptionIfPossible(KradEntityManagerFactoryBean.java:386)
      	at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:58)
      	at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:213)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:266)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.save(JpaPersistenceProvider.java:129)
      	at sun.reflect.GeneratedMethodAccessor720.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy40.save(Unknown Source)
      	at org.kuali.rice.krad.data.provider.impl.ProviderBasedDataObjectService.save(ProviderBasedDataObjectService.java:111)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.save(DocumentTypeServiceImpl.java:173)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.versionAndSave(DocumentTypeServiceImpl.java:134)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy177.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	at org.kuali.rice.kew.document.DocumentTypeMaintainable.saveBusinessObject(DocumentTypeMaintainable.java:121)
      	at org.kuali.rice.kns.maintenance.KualiMaintainableImpl.saveDataObject(KualiMaintainableImpl.java:321)
      	at org.kuali.rice.krad.maintenance.MaintenanceDocumentBase.doRouteStatusChange(MaintenanceDocumentBase.java:544)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:80)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:62)
      	at org.kuali.rice.krad.util.GlobalVariables.doInNewGlobalVariables(GlobalVariables.java:204)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doInContext(PostProcessorServiceImpl.java:393)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doRouteStatusChange(PostProcessorServiceImpl.java:62)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy96.doRouteStatusChange(Unknown Source)
      	at org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor.doRouteStatusChange(KualiPostProcessor.java:56)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.notifyPostProcessor(StandardWorkflowEngine.java:491)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.nodePostProcess(StandardWorkflowEngine.java:401)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.process(StandardWorkflowEngine.java:148)
      	at org.kuali.rice.kew.engine.BlanketApproveEngine.process(BlanketApproveEngine.java:139)
      	at org.kuali.rice.kew.actions.BlanketApproveAction.performDeferredBlanketApproveWork(BlanketApproveAction.java:198)
      	at org.kuali.rice.kew.impl.action.DocumentOrchestrationQueueImpl.orchestrateDocument(DocumentOrchestrationQueueImpl.java:66)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy188.orchestrateDocument(Unknown Source)
      	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.kuali.rice.ksb.messaging.MessageServiceInvoker.invokeService(MessageServiceInvoker.java:157)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker$1.doInTransaction(MessageServiceInvoker.java:72)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker.run(MessageServiceInvoker.java:67)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:544)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.merge(EntityManagerImpl.java:519)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:366)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:241)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$1.call(JpaPersistenceProvider.java:136)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:263)
      	... 107 more
      Caused by: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.exceptions.OptimisticLockException.objectChangedSinceLastMerge(OptimisticLockException.java:152)
      	at org.eclipse.persistence.internal.sessions.MergeManager.checkNewObjectLockVersion(MergeManager.java:1114)
      	at org.eclipse.persistence.internal.sessions.MergeManager.registerObjectForMergeCloneIntoWorkingCopy(MergeManager.java:1086)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChangesOfCloneIntoWorkingCopy(MergeManager.java:557)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChanges(MergeManager.java:313)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3521)
      	at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.mergeCloneWithReferences(RepeatableWriteUnitOfWork.java:384)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3481)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:542)
      	... 120 more
      2014-02-19 14:11:25,068 [TRAVEL/KSB-pool-1-thread-3] u:admin/d:3166 FATAL org.kuali.rice.core.framework.persistence.jta.KualiTransactionInterceptor - Exception caught by Transaction Interceptor, this will cause a rollback at the end of the transaction.
      java.lang.RuntimeException: post processor caught exception while handling route status change: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType; nested exception is javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.logAndRethrow(PostProcessorServiceImpl.java:345)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.access$200(PostProcessorServiceImpl.java:54)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:102)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:62)
      	at org.kuali.rice.krad.util.GlobalVariables.doInNewGlobalVariables(GlobalVariables.java:204)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doInContext(PostProcessorServiceImpl.java:393)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doRouteStatusChange(PostProcessorServiceImpl.java:62)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy96.doRouteStatusChange(Unknown Source)
      	at org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor.doRouteStatusChange(KualiPostProcessor.java:56)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.notifyPostProcessor(StandardWorkflowEngine.java:491)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.nodePostProcess(StandardWorkflowEngine.java:401)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.process(StandardWorkflowEngine.java:148)
      	at org.kuali.rice.kew.engine.BlanketApproveEngine.process(BlanketApproveEngine.java:139)
      	at org.kuali.rice.kew.actions.BlanketApproveAction.performDeferredBlanketApproveWork(BlanketApproveAction.java:198)
      	at org.kuali.rice.kew.impl.action.DocumentOrchestrationQueueImpl.orchestrateDocument(DocumentOrchestrationQueueImpl.java:66)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy188.orchestrateDocument(Unknown Source)
      	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.kuali.rice.ksb.messaging.MessageServiceInvoker.invokeService(MessageServiceInvoker.java:157)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker$1.doInTransaction(MessageServiceInvoker.java:72)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker.run(MessageServiceInvoker.java:67)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: org.springframework.orm.jpa.JpaOptimisticLockingFailureException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType; nested exception is javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:310)
      	at org.springframework.orm.jpa.DefaultJpaDialect.translateExceptionIfPossible(DefaultJpaDialect.java:121)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:403)
      	at org.kuali.rice.krad.data.jpa.KradEntityManagerFactoryBean.translateExceptionIfPossible(KradEntityManagerFactoryBean.java:386)
      	at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:58)
      	at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:213)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:266)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.save(JpaPersistenceProvider.java:129)
      	at sun.reflect.GeneratedMethodAccessor720.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy40.save(Unknown Source)
      	at org.kuali.rice.krad.data.provider.impl.ProviderBasedDataObjectService.save(ProviderBasedDataObjectService.java:111)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.save(DocumentTypeServiceImpl.java:173)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.versionAndSave(DocumentTypeServiceImpl.java:134)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy177.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	at org.kuali.rice.kew.document.DocumentTypeMaintainable.saveBusinessObject(DocumentTypeMaintainable.java:121)
      	at org.kuali.rice.kns.maintenance.KualiMaintainableImpl.saveDataObject(KualiMaintainableImpl.java:321)
      	at org.kuali.rice.krad.maintenance.MaintenanceDocumentBase.doRouteStatusChange(MaintenanceDocumentBase.java:544)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:80)
      	... 48 more
      Caused by: javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:544)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.merge(EntityManagerImpl.java:519)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:366)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:241)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$1.call(JpaPersistenceProvider.java:136)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:263)
      	... 107 more
      Caused by: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.exceptions.OptimisticLockException.objectChangedSinceLastMerge(OptimisticLockException.java:152)
      	at org.eclipse.persistence.internal.sessions.MergeManager.checkNewObjectLockVersion(MergeManager.java:1114)
      	at org.eclipse.persistence.internal.sessions.MergeManager.registerObjectForMergeCloneIntoWorkingCopy(MergeManager.java:1086)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChangesOfCloneIntoWorkingCopy(MergeManager.java:557)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChanges(MergeManager.java:313)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3521)
      	at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.mergeCloneWithReferences(RepeatableWriteUnitOfWork.java:384)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3481)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:542)
      	... 120 more
      2014-02-19 14:11:25,075 [TRAVEL/KSB-pool-1-thread-3] u:admin/d:3166 ERROR org.kuali.rice.kew.engine.StandardWorkflowEngine - Error notifying post processor
      java.lang.RuntimeException: post processor caught exception while handling route status change: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType; nested exception is javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.logAndRethrow(PostProcessorServiceImpl.java:345)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.access$200(PostProcessorServiceImpl.java:54)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:102)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:62)
      	at org.kuali.rice.krad.util.GlobalVariables.doInNewGlobalVariables(GlobalVariables.java:204)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doInContext(PostProcessorServiceImpl.java:393)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doRouteStatusChange(PostProcessorServiceImpl.java:62)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy96.doRouteStatusChange(Unknown Source)
      	at org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor.doRouteStatusChange(KualiPostProcessor.java:56)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.notifyPostProcessor(StandardWorkflowEngine.java:491)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.nodePostProcess(StandardWorkflowEngine.java:401)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.process(StandardWorkflowEngine.java:148)
      	at org.kuali.rice.kew.engine.BlanketApproveEngine.process(BlanketApproveEngine.java:139)
      	at org.kuali.rice.kew.actions.BlanketApproveAction.performDeferredBlanketApproveWork(BlanketApproveAction.java:198)
      	at org.kuali.rice.kew.impl.action.DocumentOrchestrationQueueImpl.orchestrateDocument(DocumentOrchestrationQueueImpl.java:66)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy188.orchestrateDocument(Unknown Source)
      	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.kuali.rice.ksb.messaging.MessageServiceInvoker.invokeService(MessageServiceInvoker.java:157)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker$1.doInTransaction(MessageServiceInvoker.java:72)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker.run(MessageServiceInvoker.java:67)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: org.springframework.orm.jpa.JpaOptimisticLockingFailureException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType; nested exception is javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:310)
      	at org.springframework.orm.jpa.DefaultJpaDialect.translateExceptionIfPossible(DefaultJpaDialect.java:121)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:403)
      	at org.kuali.rice.krad.data.jpa.KradEntityManagerFactoryBean.translateExceptionIfPossible(KradEntityManagerFactoryBean.java:386)
      	at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:58)
      	at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:213)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:266)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.save(JpaPersistenceProvider.java:129)
      	at sun.reflect.GeneratedMethodAccessor720.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy40.save(Unknown Source)
      	at org.kuali.rice.krad.data.provider.impl.ProviderBasedDataObjectService.save(ProviderBasedDataObjectService.java:111)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.save(DocumentTypeServiceImpl.java:173)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.versionAndSave(DocumentTypeServiceImpl.java:134)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy177.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	at org.kuali.rice.kew.document.DocumentTypeMaintainable.saveBusinessObject(DocumentTypeMaintainable.java:121)
      	at org.kuali.rice.kns.maintenance.KualiMaintainableImpl.saveDataObject(KualiMaintainableImpl.java:321)
      	at org.kuali.rice.krad.maintenance.MaintenanceDocumentBase.doRouteStatusChange(MaintenanceDocumentBase.java:544)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:80)
      	... 48 more
      Caused by: javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:544)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.merge(EntityManagerImpl.java:519)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:366)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:241)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$1.call(JpaPersistenceProvider.java:136)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:263)
      	... 107 more
      Caused by: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.exceptions.OptimisticLockException.objectChangedSinceLastMerge(OptimisticLockException.java:152)
      	at org.eclipse.persistence.internal.sessions.MergeManager.checkNewObjectLockVersion(MergeManager.java:1114)
      	at org.eclipse.persistence.internal.sessions.MergeManager.registerObjectForMergeCloneIntoWorkingCopy(MergeManager.java:1086)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChangesOfCloneIntoWorkingCopy(MergeManager.java:557)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChanges(MergeManager.java:313)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3521)
      	at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.mergeCloneWithReferences(RepeatableWriteUnitOfWork.java:384)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3481)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:542)
      	... 120 more
      2014-02-19 14:11:25,079 [TRAVEL/KSB-pool-1-thread-3] u:admin/d:3166 INFO  org.kuali.rice.kew.util.PerformanceLogger - Time:      71ms, docId=3166, Time to notifyPostProcessor of event rt_status_change.
      2014-02-19 14:11:25,079 [TRAVEL/KSB-pool-1-thread-3] u:admin/d:3166 INFO  org.kuali.rice.kew.engine.StandardWorkflowEngine - Failed to process document: 3166 : null
      2014-02-19 14:11:25,095 [TRAVEL/KSB-pool-1-thread-3] u:admin/d:3166 INFO  org.kuali.rice.krad.maintenance.MaintenanceUtils - starting checkForLockingDocument (by MaintenanceDocument)
      2014-02-19 14:11:25,110 [TRAVEL/KSB-pool-1-thread-3] u:admin/d: FATAL org.kuali.rice.core.framework.persistence.jta.KualiTransactionInterceptor - Exception caught by Transaction Interceptor, this will cause a rollback at the end of the transaction.
      org.kuali.rice.kew.exception.RouteManagerException: org.kuali.rice.kew.exception.RouteManagerException: PostProcessor failed to process document: 
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.process(StandardWorkflowEngine.java:154)
      	at org.kuali.rice.kew.engine.BlanketApproveEngine.process(BlanketApproveEngine.java:139)
      	at org.kuali.rice.kew.actions.BlanketApproveAction.performDeferredBlanketApproveWork(BlanketApproveAction.java:198)
      	at org.kuali.rice.kew.impl.action.DocumentOrchestrationQueueImpl.orchestrateDocument(DocumentOrchestrationQueueImpl.java:66)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy188.orchestrateDocument(Unknown Source)
      	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.kuali.rice.ksb.messaging.MessageServiceInvoker.invokeService(MessageServiceInvoker.java:157)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker$1.doInTransaction(MessageServiceInvoker.java:72)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker.run(MessageServiceInvoker.java:67)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: org.kuali.rice.kew.exception.RouteManagerException: PostProcessor failed to process document: 
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.notifyPostProcessor(StandardWorkflowEngine.java:494)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.nodePostProcess(StandardWorkflowEngine.java:401)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.process(StandardWorkflowEngine.java:148)
      	... 27 more
      Caused by: java.lang.RuntimeException: post processor caught exception while handling route status change: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType; nested exception is javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.logAndRethrow(PostProcessorServiceImpl.java:345)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.access$200(PostProcessorServiceImpl.java:54)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:102)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:62)
      	at org.kuali.rice.krad.util.GlobalVariables.doInNewGlobalVariables(GlobalVariables.java:204)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doInContext(PostProcessorServiceImpl.java:393)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doRouteStatusChange(PostProcessorServiceImpl.java:62)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy96.doRouteStatusChange(Unknown Source)
      	at org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor.doRouteStatusChange(KualiPostProcessor.java:56)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.notifyPostProcessor(StandardWorkflowEngine.java:491)
      	... 29 more
      Caused by: org.springframework.orm.jpa.JpaOptimisticLockingFailureException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType; nested exception is javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:310)
      	at org.springframework.orm.jpa.DefaultJpaDialect.translateExceptionIfPossible(DefaultJpaDialect.java:121)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:403)
      	at org.kuali.rice.krad.data.jpa.KradEntityManagerFactoryBean.translateExceptionIfPossible(KradEntityManagerFactoryBean.java:386)
      	at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:58)
      	at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:213)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:266)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.save(JpaPersistenceProvider.java:129)
      	at sun.reflect.GeneratedMethodAccessor720.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy40.save(Unknown Source)
      	at org.kuali.rice.krad.data.provider.impl.ProviderBasedDataObjectService.save(ProviderBasedDataObjectService.java:111)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.save(DocumentTypeServiceImpl.java:173)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.versionAndSave(DocumentTypeServiceImpl.java:134)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy177.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	at org.kuali.rice.kew.document.DocumentTypeMaintainable.saveBusinessObject(DocumentTypeMaintainable.java:121)
      	at org.kuali.rice.kns.maintenance.KualiMaintainableImpl.saveDataObject(KualiMaintainableImpl.java:321)
      	at org.kuali.rice.krad.maintenance.MaintenanceDocumentBase.doRouteStatusChange(MaintenanceDocumentBase.java:544)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:80)
      	... 48 more
      Caused by: javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:544)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.merge(EntityManagerImpl.java:519)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:366)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:241)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$1.call(JpaPersistenceProvider.java:136)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:263)
      	... 107 more
      Caused by: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.exceptions.OptimisticLockException.objectChangedSinceLastMerge(OptimisticLockException.java:152)
      	at org.eclipse.persistence.internal.sessions.MergeManager.checkNewObjectLockVersion(MergeManager.java:1114)
      	at org.eclipse.persistence.internal.sessions.MergeManager.registerObjectForMergeCloneIntoWorkingCopy(MergeManager.java:1086)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChangesOfCloneIntoWorkingCopy(MergeManager.java:557)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChanges(MergeManager.java:313)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3521)
      	at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.mergeCloneWithReferences(RepeatableWriteUnitOfWork.java:384)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3481)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:542)
      	... 120 more
      2014-02-19 14:11:25,118 [TRAVEL/KSB-pool-1-thread-3] u:admin/d: WARN  org.kuali.rice.ksb.messaging.MessageServiceInvoker - Caught throwable making async service call [AsynchronousCall: serviceInfo=org.kuali.rice.ksb.api.bus.support.SoapServiceConfiguration@14a639b6[serviceInterface=org.kuali.rice.kew.api.document.DocumentOrchestrationQueue,jaxWsService=true,serviceName={http://rice.kuali.org/kew/v2_0}documentOrchestrationQueue,endpointUrl=http://192.168.1.71:8080/kr-dev/remoting/soap/kew/v2_0/documentOrchestrationQueue,instanceId=TRAVEL-192.168.1.71,applicationId=TRAVEL,serviceVersion=2.4.0-M4-SNAPSHOT,type=SOAP,queue=true,priority=4,retryAttempts=0,millisToLive=-1,messageExceptionHandler=org.kuali.rice.kew.messaging.exceptionhandling.DocumentMessageExceptionHandler,busSecurity=true,credentialsType=<null>,basicAuthentication=false,_futureElements=<null>], methodName=orchestrateDocument, paramTypes=class [Ljava.lang.Class;[], arguments=class [Ljava.lang.Object;[]]
      java.lang.reflect.InvocationTargetException
      	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.kuali.rice.ksb.messaging.MessageServiceInvoker.invokeService(MessageServiceInvoker.java:157)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker$1.doInTransaction(MessageServiceInvoker.java:72)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker.run(MessageServiceInvoker.java:67)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: org.kuali.rice.kew.exception.RouteManagerException: org.kuali.rice.kew.exception.RouteManagerException: PostProcessor failed to process document: 
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.process(StandardWorkflowEngine.java:154)
      	at org.kuali.rice.kew.engine.BlanketApproveEngine.process(BlanketApproveEngine.java:139)
      	at org.kuali.rice.kew.actions.BlanketApproveAction.performDeferredBlanketApproveWork(BlanketApproveAction.java:198)
      	at org.kuali.rice.kew.impl.action.DocumentOrchestrationQueueImpl.orchestrateDocument(DocumentOrchestrationQueueImpl.java:66)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy188.orchestrateDocument(Unknown Source)
      	... 11 more
      Caused by: org.kuali.rice.kew.exception.RouteManagerException: PostProcessor failed to process document: 
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.notifyPostProcessor(StandardWorkflowEngine.java:494)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.nodePostProcess(StandardWorkflowEngine.java:401)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.process(StandardWorkflowEngine.java:148)
      	... 27 more
      Caused by: java.lang.RuntimeException: post processor caught exception while handling route status change: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType; nested exception is javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.logAndRethrow(PostProcessorServiceImpl.java:345)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.access$200(PostProcessorServiceImpl.java:54)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:102)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:62)
      	at org.kuali.rice.krad.util.GlobalVariables.doInNewGlobalVariables(GlobalVariables.java:204)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doInContext(PostProcessorServiceImpl.java:393)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl.doRouteStatusChange(PostProcessorServiceImpl.java:62)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy96.doRouteStatusChange(Unknown Source)
      	at org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor.doRouteStatusChange(KualiPostProcessor.java:56)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.notifyPostProcessor(StandardWorkflowEngine.java:491)
      	... 29 more
      Caused by: org.springframework.orm.jpa.JpaOptimisticLockingFailureException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType; nested exception is javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.springframework.orm.jpa.EntityManagerFactoryUtils.convertJpaAccessExceptionIfPossible(EntityManagerFactoryUtils.java:310)
      	at org.springframework.orm.jpa.DefaultJpaDialect.translateExceptionIfPossible(DefaultJpaDialect.java:121)
      	at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:403)
      	at org.kuali.rice.krad.data.jpa.KradEntityManagerFactoryBean.translateExceptionIfPossible(KradEntityManagerFactoryBean.java:386)
      	at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:58)
      	at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:213)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:266)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.save(JpaPersistenceProvider.java:129)
      	at sun.reflect.GeneratedMethodAccessor720.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy40.save(Unknown Source)
      	at org.kuali.rice.krad.data.provider.impl.ProviderBasedDataObjectService.save(ProviderBasedDataObjectService.java:111)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.save(DocumentTypeServiceImpl.java:173)
      	at org.kuali.rice.kew.doctype.service.impl.DocumentTypeServiceImpl.versionAndSave(DocumentTypeServiceImpl.java:134)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy177.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.cache.interceptor.CacheInterceptor$1.invoke(CacheInterceptor.java:58)
      	at org.springframework.cache.interceptor.CacheAspectSupport.execute(CacheAspectSupport.java:214)
      	at org.springframework.cache.interceptor.CacheInterceptor.invoke(CacheInterceptor.java:66)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy178.versionAndSave(Unknown Source)
      	at org.kuali.rice.kew.document.DocumentTypeMaintainable.saveBusinessObject(DocumentTypeMaintainable.java:121)
      	at org.kuali.rice.kns.maintenance.KualiMaintainableImpl.saveDataObject(KualiMaintainableImpl.java:321)
      	at org.kuali.rice.krad.maintenance.MaintenanceDocumentBase.doRouteStatusChange(MaintenanceDocumentBase.java:544)
      	at org.kuali.rice.krad.service.impl.PostProcessorServiceImpl$1.call(PostProcessorServiceImpl.java:80)
      	... 48 more
      Caused by: javax.persistence.OptimisticLockException: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:544)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.merge(EntityManagerImpl.java:519)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.ExtendedEntityManagerCreator$ExtendedEntityManagerInvocationHandler.invoke(ExtendedEntityManagerCreator.java:366)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at sun.reflect.GeneratedMethodAccessor691.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      	at java.lang.reflect.Method.invoke(Method.java:597)
      	at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:241)
      	at com.sun.proxy.$Proxy38.merge(Unknown Source)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider$1.call(JpaPersistenceProvider.java:136)
      	at org.kuali.rice.krad.data.jpa.JpaPersistenceProvider.doWithExceptionTranslation(JpaPersistenceProvider.java:263)
      	... 107 more
      Caused by: Exception [EclipseLink-5010] (Eclipse Persistence Services - 2.5.1.v20130918-f2b9fc5): org.eclipse.persistence.exceptions.OptimisticLockException
      Exception Description: The object [org.kuali.rice.kew.doctype.bo.DocumentType@770fd79[documentTypeId=<null>,docTypeParentId=2681,name=TravelAccountTypeMaintenanceDocument22,version=0,active=true,currentInd=true,description=Create a Travel Account Type Maintenance Document,label=Travel Account Type MaintenanceDocument,previousVersionId=<null>,documentId=<null>,unresolvedHelpDefinitionUrl=<null>,unresolvedDocSearchHelpUrl=<null>,unresolvedDocHandlerUrl=${application.url}/kr-krad/maintenance?methodToCall=docHandler&dataObjectClassName=org.kuali.rice.krad.demo.travel.dataobject.TravelAccountType,postProcessorName=org.kuali.rice.krad.workflow.postprocessor.KualiPostProcessor,workgroupId=<null>,blanketApproveWorkgroupId=<null>,blanketApprovePolicy=<null>,reportingWorkgroupId=<null>,actualApplicationId=<null>,authorizer=<null>,documentTypePolicies=[],validApplicationStatuses=<null>,applicationStatusCategories=<null>,documentTypeAttributes=[],processes=[],routingVersion=2,actualNotificationFromAddress=<null>,documentTypeSecurityXml=<null>,customEmailStylesheet=<null>,returnUrl=<null>,actionsUrl=<null>,applyRetroactively=false,defaultExceptionWorkgroup=<null>,childrenDocTypes=<null>,documentTypeSecurity=<null>,versionNumber=1,objectId=<null>,newCollectionRecord=false,_persistence_fetchGroup=<null>]] cannot be merged because it has changed or been deleted since it was last read. 
      Class> org.kuali.rice.kew.doctype.bo.DocumentType
      	at org.eclipse.persistence.exceptions.OptimisticLockException.objectChangedSinceLastMerge(OptimisticLockException.java:152)
      	at org.eclipse.persistence.internal.sessions.MergeManager.checkNewObjectLockVersion(MergeManager.java:1114)
      	at org.eclipse.persistence.internal.sessions.MergeManager.registerObjectForMergeCloneIntoWorkingCopy(MergeManager.java:1086)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChangesOfCloneIntoWorkingCopy(MergeManager.java:557)
      	at org.eclipse.persistence.internal.sessions.MergeManager.mergeChanges(MergeManager.java:313)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3521)
      	at org.eclipse.persistence.internal.sessions.RepeatableWriteUnitOfWork.mergeCloneWithReferences(RepeatableWriteUnitOfWork.java:384)
      	at org.eclipse.persistence.internal.sessions.UnitOfWorkImpl.mergeCloneWithReferences(UnitOfWorkImpl.java:3481)
      	at org.eclipse.persistence.internal.jpa.EntityManagerImpl.mergeInternal(EntityManagerImpl.java:542)
      	... 120 more
      2014-02-19 14:11:25,141 [TRAVEL/KSB-pool-1-thread-3] u:admin/d: ERROR org.kuali.rice.ksb.messaging.MessageServiceInvoker - Error processing message: [RouteQueue: , routeQueueId=619, ipNumber=192.168.1.71applicationId=TRAVEL, serviceName={http://rice.kuali.org/kew/v2_0}documentOrchestrationQueue, methodName=orchestrateDocument, queueStatus=R, queuePriority=4, queueDate=2014-02-19 14:11:24.154]
      org.kuali.rice.ksb.messaging.MessageProcessingException: java.lang.reflect.InvocationTargetException
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker$1.doInTransaction(MessageServiceInvoker.java:76)
      	at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker.run(MessageServiceInvoker.java:67)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
      	at java.lang.Thread.run(Thread.java:662)
      Caused by: java.lang.reflect.InvocationTargetException
      	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.kuali.rice.ksb.messaging.MessageServiceInvoker.invokeService(MessageServiceInvoker.java:157)
      	at org.kuali.rice.ksb.messaging.MessageServiceInvoker$1.doInTransaction(MessageServiceInvoker.java:72)
      	... 5 more
      Caused by: org.kuali.rice.kew.exception.RouteManagerException: org.kuali.rice.kew.exception.RouteManagerException: PostProcessor failed to process document: 
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.process(StandardWorkflowEngine.java:154)
      	at org.kuali.rice.kew.engine.BlanketApproveEngine.process(BlanketApproveEngine.java:139)
      	at org.kuali.rice.kew.actions.BlanketApproveAction.performDeferredBlanketApproveWork(BlanketApproveAction.java:198)
      	at org.kuali.rice.kew.impl.action.DocumentOrchestrationQueueImpl.orchestrateDocument(DocumentOrchestrationQueueImpl.java:66)
      	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.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
      	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at com.sun.proxy.$Proxy188.orchestrateDocument(Unknown Source)
      	... 11 more
      Caused by: org.kuali.rice.kew.exception.RouteManagerException: PostProcessor failed to process document: 
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.notifyPostProcessor(StandardWorkflowEngine.java:494)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.nodePostProcess(StandardWorkflowEngine.java:401)
      	at org.kuali.rice.kew.engine.StandardWorkflowEngine.process(StandardWorkflowEngine.java:148)
      	... 27 more
      

        Issue Links

          Activity

          Hide
          Shannon Hess added a comment -

          There is a less severe problem when copying parameters. The copy works fine (original parameter is not changed, and copied parameter is created). However, the document title is still incorrect. example - “Edit ParameterBo - Copy parameter”

          Show
          Shannon Hess added a comment - There is a less severe problem when copying parameters. The copy works fine (original parameter is not changed, and copied parameter is created). However, the document title is still incorrect. example - “Edit ParameterBo - Copy parameter”
          Hide
          Shannon Hess added a comment -

          This has been fixed so document types can be successfully copied now.

          Show
          Shannon Hess added a comment - This has been fixed so document types can be successfully copied now.

            People

            • Assignee:
              Shannon Hess
              Reporter:
              Shannon Hess
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - 6 hours
                6h
                Remaining:
                Time Spent - 5 hours Remaining Estimate - 1 hour
                1h
                Logged:
                Time Spent - 5 hours Remaining Estimate - 1 hour
                5h

                  Agile

                    Structure Helper Panel