Legacy Knowledge Base
Published Jun. 30, 2025

Workflow cannot be used with Publications enabled, and vice versa

Written By

Solyom Nagy-Györkös

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

Legacy Article

You are viewing an article from our legacy "FastTrack" publication program, made available for informational purposes. Articles in this program were published without a requirement for independent editing or verification and are provided"as is" without guarantee.

Before using any information from this article, independently verify its suitability for your situation and project.

Issue

  • When we enable Workflow and Publications together, and we can't publish assets, e.g. web content articles
  • We see the below exceptions in the log:
ERROR [http-nio-8080-exec-14][TransactionCommitCallbackUtil:46] Unable to execute transaction commit callback
com.liferay.portal.kernel.change.tracking.CTTransactionException: CT transaction validation failure. Nested operation using com.liferay.portal.workflow.kaleo.runtime.internal.DefaultWorkflowEngineImpl@3380653d can only be performed in production mode.
    at com.liferay.change.tracking.internal.aop.CTTransactionAdvice.invoke(CTTransactionAdvice.java:101)
    at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)
    at com.liferay.portal.spring.aop.AopInvocationHandler.invoke(AopInvocationHandler.java:49)
    at com.sun.proxy.$Proxy782.startWorkflowInstance(Unknown Source)
    at com.liferay.portal.workflow.kaleo.runtime.integration.internal.WorkflowInstanceManagerImpl.startWorkflowInstance(WorkflowInstanceManagerImpl.java:328)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at com.liferay.portal.kernel.messaging.proxy.ProxyRequest.execute(ProxyRequest.java:82)
    at com.liferay.portal.kernel.messaging.proxy.ProxyMessageListener.receive(ProxyMessageListener.java:58)
    at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:74)
    at com.liferay.portal.messaging.internal.SynchronousDestination.send(SynchronousDestination.java:46)
    at com.liferay.portal.messaging.internal.sender.DirectSynchronousMessageSender.send(DirectSynchronousMessageSender.java:59)
    at com.liferay.portal.kernel.messaging.proxy.BaseProxyBean.synchronousSend(BaseProxyBean.java:60)
    at com.liferay.portal.kernel.messaging.proxy.MessagingProxyInvocationHandler.invoke(MessagingProxyInvocationHandler.java:55)
    at com.sun.proxy.$Proxy203.startWorkflowInstance(Unknown Source)
  at com.liferay.portal.kernel.workflow.WorkflowInstanceManagerUtil.startWorkflowInstance(WorkflowInstanceManagerUtil.java:217)

Environment

  • Below Liferay DXP 7.4-u44

Resolution

  • The inability of using Publications and Workflow was a product limitation, however, we've made it possible from DXP 7.4-U44 and above, we suggest you upgrade your Liferay to be able to use those two features together

Additional Information

Did this article resolve your issue ?

Legacy Knowledge Base