หลังจากลองตัว Camunda BPMN Engine มาสักพัก แล้วจะทดสอบอะไร อยากรู้ว่ามันมีค่าเท่าไหร่ ปกติเราทำพวก Instrument Test เพื่อแสดงให้เห็นว่ากิจกรรมที่สนใจ โดยผมเขียนคำสั่งประมาณนี้
out:println "=========================================" out:println "execution id " + execution.getProcessInstanceId(); out:println "loanAmt =" + execution.getVariable("loanAmt"); out:println "========================================="
เมื่อนำไป Run กับ BPMN Engine พบว่า Stack Size is too large ครับ
ปัญหา คือ อะไร
- Operation ในการทำงานมันเยอะเกินไปครับ แทนที่จะให้มันต่อ String ในคำสั่ง ก็แก้ไขให้มันเตรียมข้อมูลอะไรให้เสร็จก่อนครับ
- การแก้ไข แยกส่วนของเตรียมข้อมูลออกจากการแสดงผลครับ โดย Code ใน Scritp Task ที่ได้ เป็นดังนี้
def line1 = "execution id " + execution.getProcessInstanceId(); def line2 = "loanAmt =" + execution.getVariable("loanAmt"); out:println "=========================================" out:println line1; out:println line2; out:println "========================================="
ทดสอบอีกครั้งครับ
- ได้ผลลัพธ์สวยงามครับ ^___^
Discover more from naiwaen@DebuggingSoft
Subscribe to get the latest posts sent to your email.