When working with the script component in LiveCycle ES you may receive the following exception:
Target exception: ALC-DSC-000-000: com.adobe.idp.dsc.DSCRuntimeException: Internal error. at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:74) at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:69) at bsh.Interpreter.eval(Interpreter.java:594) at bsh.Interpreter.eval(Interpreter.java:682) at bsh.Interpreter.eval(Interpreter.java:672) at com.adobe.workflow.qpac.script.ScriptService.execute(ScriptService.java:88)
This exception can occur when using script similar to the following:
String clean_xml = patExecContext.getProcessDataStringValue("/process_data/myxmlbranch");
clean_xml = clean_xml.replaceAll("(<)","<");
clean_xml = clean_xml.replaceAll("(>)",">");
to process XML data. This script is working fine in LiveCycle 7, but after upgrading to ES, the script is giving this error.
In this case the customer had quotation marks at the start and end of the XML stream. They must have been stripped away automatically in LiveCycle 7, but in LiveCycle ES, you must remove the unexpected characters and then it will process the XML without problems.
If a LiveCycle 7.x process that is upgraded to LiveCycle ES includes the Script QPAC, the Script QPAC may reference a script that was developed using the LiveCycle 7.x API. To ensure compatibility with LiveCycle ES, the script that the Script QPAC references must be rewritten using the LiveCycle ES API.
In this case the getProcessDataStringValue() and setProcessDataValue() methods of the patExecContext embedded object are available in ES just as they were in LiveCycle 7 so there were no changes necessary in the script.