Message Boards
workflow on custom entity (Liferay 7.2)
Tej Dave, modified 3 Years ago.
workflow on custom entity (Liferay 7.2)
New Member Posts: 11 Join Date: 12/24/19 Recent Posts
I need to implement workflow on a custom entity
for that, I am following this URL -https://help.liferay.com/hc/en-us/articles/360034748612-Creating-a-Workflow-Handler-for-Guestbooks
I have created handler just where the portlet is but No handler found error occure
ServiceContext serviceContext = ServiceContextFactory.getInstance(Foo.class.getName(), renderRequest);
WorkflowDefinitionLink workflowDefinitionLink = null;
try { workflowDefinitionLink = WorkflowDefinitionLinkLocalServiceUtil
.getDefaultWorkflowDefinitionLink(foo.getCompanyId(), Foo.class.getName(), 0, 0); } catch (Exception e) { } AssetEntryLocalServiceUtil.updateEntry(foo.getUserId(), foo.getGroupId(), User.class.getName(),
foo.getPrimaryKey(), serviceContext.getAssetCategoryIds(), serviceContext.getAssetTagNames()); WorkflowHandlerRegistryUtil.startWorkflowInstance(foo.getCompanyId(), foo.getGroupId(), foo.getUserId(),
Foo.class.getName(), foo.getPrimaryKey(), foo, serviceContext);
} catch (PortalException e) {
e.printStackTrace();
}
Handler mapping -
@Component(immediate = true, property = { "model.class.name=WokeFlow.model.Foo",
"javax.portlet.name=" + WorkFlowDemoPortletKeys.WORKFLOWDEMO, }, service = WorkflowHandler.class)
error -
com.liferay.portal.kernel.workflow.WorkflowException: No workflow handler found for WokeFlow.model.Foo
at com.liferay.portal.kernel.workflow.WorkflowHandlerRegistryUtil.startWorkflowInstance(WorkflowHandlerRegistryUtil.java:122)
at com.liferay.portal.kernel.workflow.WorkflowHandlerRegistryUtil.startWorkflowInstance(WorkflowHandlerRegistryUtil.java:99)
at workFlowDemo.portlet.WorkFlowDemoPortlet.doView(WorkFlowDemoPortlet.java:84)
for that, I am following this URL -https://help.liferay.com/hc/en-us/articles/360034748612-Creating-a-Workflow-Handler-for-Guestbooks
I have created handler just where the portlet is but No handler found error occure
ServiceContext serviceContext = ServiceContextFactory.getInstance(Foo.class.getName(), renderRequest);
WorkflowDefinitionLink workflowDefinitionLink = null;
try { workflowDefinitionLink = WorkflowDefinitionLinkLocalServiceUtil
.getDefaultWorkflowDefinitionLink(foo.getCompanyId(), Foo.class.getName(), 0, 0); } catch (Exception e) { } AssetEntryLocalServiceUtil.updateEntry(foo.getUserId(), foo.getGroupId(), User.class.getName(),
foo.getPrimaryKey(), serviceContext.getAssetCategoryIds(), serviceContext.getAssetTagNames()); WorkflowHandlerRegistryUtil.startWorkflowInstance(foo.getCompanyId(), foo.getGroupId(), foo.getUserId(),
Foo.class.getName(), foo.getPrimaryKey(), foo, serviceContext);
} catch (PortalException e) {
e.printStackTrace();
}
Handler mapping -
@Component(immediate = true, property = { "model.class.name=WokeFlow.model.Foo",
"javax.portlet.name=" + WorkFlowDemoPortletKeys.WORKFLOWDEMO, }, service = WorkflowHandler.class)
error -
com.liferay.portal.kernel.workflow.WorkflowException: No workflow handler found for WokeFlow.model.Foo
at com.liferay.portal.kernel.workflow.WorkflowHandlerRegistryUtil.startWorkflowInstance(WorkflowHandlerRegistryUtil.java:122)
at com.liferay.portal.kernel.workflow.WorkflowHandlerRegistryUtil.startWorkflowInstance(WorkflowHandlerRegistryUtil.java:99)
at workFlowDemo.portlet.WorkFlowDemoPortlet.doView(WorkFlowDemoPortlet.java:84)
Mohammed Yasin, modified 3 Years ago.
RE: workflow on custom entity (Liferay 7.2)
Liferay Master Posts: 591 Join Date: 8/8/14 Recent PostsHi ,
Handler mapping -
@Component(immediate = true, property = { "model.class.name=WokeFlow.model.Foo",
"javax.portlet.name=" + WorkFlowDemoPortletKeys.WORKFLOWDEMO, }, service = WorkflowHandler.class)
i dont think u need to specify portlet name and model class name in work flow handler, only below code is enough
@Component(immediate = true, service = WorkflowHandler.class)
public class GuestbookWorkflowHandler extends BaseWorkflowHandler<guestbook> {..</guestbook>