Как получить и установить значение свойства объекта свойства в задаче сценария Activiti

Я новичок в Activiti, я использую задачу сценария в своем файле bpmn и что нужно сделать для преобразования значений. Пожалуйста, проверьте мой код ниже.

передать переменную при запуске рабочего процесса:

Map<String,Object> var = new HashMap<String,Object>();
Person req = getRequest();
var.put("req", req);

runtimeService.startProcessInstanceByKey("demo",var);

Метод получения запроса:

private static Person getRequest() {

    return new Person("John",30,"1");
}

моя задача скрипта:

<scriptTask id="scripttask1" name="script task" scriptFormat="javascript">
  <script><![CDATA[
    	var req = execution.getVariable("req");
    	console.log(req);
  ]]></script>
</scriptTask>

Свойства в Person — это имя, возраст и пол. Я хочу получить значение пола в задаче сценария, а затем преобразовать его в наш формат. Я попытался написать код выше в задаче сценария, но я не знаю, как получить свойство из переменной объекта, кто-нибудь может помочь? Или в любом случае я могу отладить то, что я получаю в своей задаче сценария? Спасибо!


person Allen4Tech    schedule 21.12.2018    source источник


Ответы (1)


Я бы порекомендовал вам не использовать задачу сценария и использовать JavaDelegate с ServiceTask, если вы используете Activiti 5 или 6. Задачи сценариев все время оказываются беспорядочными. https://www.activiti.org/userguide/#bpmnJavaServiceTask

person salaboy    schedule 22.12.2018