2016-11-18 21 views
-1

我使用JBPM 6.5.0.Final並將應用程序部署到Tomcat 8.5.5。我配置每個狀態的所有輸入和輸出映射。但是,在爲狀態中的某些屬性分配新值後,Web服務器在退出該狀態後仍會顯示以前的值。有誰知道可能的原因是什麼?在JBPM中,屬性的值在退出該狀態後無法保存

@Override 
public void executeWorkItem(WorkItem arg0, WorkItemManager arg1) { 
    Map<String, Object> params = dummyAuthenticate(arg0, arg1); 
    System.out.println("params >>>> " + JSONObject.toJSONString(params)); 
    arg1.completeWorkItem(arg0.getId(), params); 
} 

private Map<String, Object> dummyAuthenticate(WorkItem arg0, WorkItemManager arg1) { 
    Map<String, Object> params = new HashMap<String, Object>(); 
    HashMap dataMap = (HashMap) arg0.getParameter("xml"); 
    params.put("nodeId", arg0.getName()); 
    params.put("returnCode", "00000001"); 
    params.put("description", "HELLO"); 
    return params; 
} 

這是日誌

>>> manager: [class org.jbpm.runtime.manager.impl.SingletonRuntimeManager] 
>>> engine: [class org.jbpm.runtime.manager.impl.SynchronizedRuntimeImpl] 
>>> before signalEvent. 
params >>>> {"returnCode":"00000001","description":"HELLO","nodeId":"Authenticate"} 
>>> after signalEvent. 
output >>>>>> ["20161118152028481(85 ms)","00000000","Y"] 
18-Nov-2016 15:20:47.621 INFO [http-nio-9999-exec-9] org.apache.cxf.interceptor.AbstractLoggingInterceptor.log Outbound Message 

回答

0

我不知道究竟你的流程定義是什麼樣子,但我相信你映射的過程變量的工作項目輸入參數,然後想輸出參數映射回處理變量。

您確定您正確地將輸出參數映射回您的過程變量嗎?他們存儲在結果變量(java.util.Map),你可以在我的回答和評論here看到。

相關問題