[BPMN] แก้ปัญหา Stack Size is too large บน Camunda BPMN

หลังจากลองตัว 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 to your email.