As we transition to the new Hyland Community, some post links may be temporarily disrupted as we finalize redirects. We apologize for the inconvenience and are working to resolve this as quickly as possible. Details.
@Override public void notify(DelegateTask delegateTask) { TaskEntity task =(TaskEntity)delegateTask; FormService formService = processEngine.getFormService(); List<FormProperty> formProperties = formService.getTaskFormData( task.getId() ).getFormProperties(); …
<br>…<br>//you can query how ever you want using the task definition key<br>List<Task> processTasks = processEngine.getTaskService().createTaskQuery().taskDefinitionKey(delegateTask.getTaskDefinitionKey()).orderByTaskCreateTime().desc().list();<br>//lets assume I know that only the first place is of my interest. We also need to check that we got something back from the query - I skipped that<br>processEngine.getFormService().getTaskFormData(processTasks.get(0).getId()).getFormKey();<br>…<br>
<br> @Test<br> @Transactional("bpmTxManager")<br> public void testSetAssignees() throws IOException {<br> RepositoryServiceImpl repo = (RepositoryServiceImpl) processEngine<br> .getRepositoryService();<br> ProcessDefinitionEntity pde = (ProcessDefinitionEntity) repositoryService<br> .createProcessDefinitionQuery()<br> .processDefinitionKey("Mco_ApproveProcessExample")<br> .latestVersion().singleResult();<br> pde = (ProcessDefinitionEntity) repo.getDeployedProcessDefinition(pde<br> .getId());<br> Properties prop = new Properties();<br> prop.load(new StringReader(pde.getDescription()));<br> System.out.println(prop.getProperty("context"));<br> System.out.println(prop.getProperty("desc"));<br> System.out.println("process: " + pde.getDescription());<br> <br> Map<String,TaskDefinition> tasks = pde.getTaskDefinitions();<br> for(Iterator<Map.Entry<String, TaskDefinition>> iter = tasks.entrySet().iterator();iter.hasNext():smileywink:{<br> Entry<String, TaskDefinition> entry = iter.next();<br> System.out.println("key: " + entry.getKey());<br> TaskDefinition task = entry.getValue();<br> System.out.println("task key: " + task.getKey());<br> System.out.println("task name: " + task.getNameExpression().getExpressionText());<br> System.out.println("assignee: " + task.getAssigneeExpression().getExpressionText());<br> List<FormPropertyHandler> handlers = ((DefaultTaskFormHandler) task<br> .getTaskFormHandler()).getFormPropertyHandlers();<br> for(FormPropertyHandler handler : handlers){<br> System.out.println("form property name:" + handler.getName()); // here is what you want i guess<br> }<br> }<br> }<br>