I guess first you have to get hold of the "workitemid" from the task data i.e.
task.getTaskData().getWorkItemId().
a) Create a "Command" class which implements
GenericCommand<WorkItem>
b) Implement the method "public WorkItem execute(Context context)"
c) Based on the workitem id ( set this value in your command object -
constructor/setter) - get hold of the WorkItemInfo object through the entity manager and
then its workItem ----- something like this
StatefulKnowledgeSession ksession = ((KnowledgeCommandContext)
context).getStatefulKnowledgesession();
if (workItemId==null) {
return null;
}
EntityManager em = (EntityManager)
ksession.getEnvironment().get(EnvironmentName.ENTITY_MANAGER);
WorkItemInfo workItemInfo = em.find(WorkItemInfo.class,
workItemId);
if(workItemInfo==null){
return null;
}else{
return workItemInfo.getWorkItem();
}
d) Then call the execute method on the StatefulKnowledgeSession - which should
execute the above Command object and that returns you the WorkItem object.
Vijay
________________________________
From: rules-users-bounces(a)lists.jboss.org [mailto:rules-users-bounces@lists.jboss.org] On
Behalf Of Todd Pagni
Sent: Tuesday, December 08, 2009 11:16 AM
To: Rules Users List
Subject: [rules-users] Human Task Work Item
From the Mina client, how do you get a work item associated with a
human task?
I see the Task.getTaskData(), but I don't see any easy way to get the work item as I
need the work item inparameters from the mina client side.
Thanks,
Todd