Hi I need to evaluate an expression rule from my smart service. I cou

Hi

I need to evaluate an expression rule from my smart service. I could able to get the expression rule id through ContentService.searchByRoot(rulesRootId, ruleName, filter)
and I got an object of type FreeformRule and i can get the expression rule id from that object.
I need to evaluate this rule and get the results which return a custom data type.

I tried to use ExpressionService.evaluateExpression, but it is deprecated method. In processDesignService.evaluateExpression takes java.lang.String Expression as parameter, not expression rule id.
Please suggest me with suitable api that takes expression rule id as parameter and return results
Thanks
Jhothi

OriginalPostID-141185

OriginalPostID-141185

  Discussion posts and replies are publicly visible

Parents
  • Thanks Ed for your suggestions. I have imported the complex data type already. My project requirement is to read the values of a complex data type set in Appian from Authentication Filter. I am using this filter for customizations at the time of user login. Since there is no way in a filter to read user input values, I have created an expression rule in Appian Rules tab which when evaluated returns a custom data type ( with values set) and I want those values to be read from filter.
    I used ProcessDesignService.evaluateExpression but I got the error:
    com.appiancorp.process.expression.ExpressionRuntimeException$AppianExceptionProvider: Expression evaluation error : Rule ei_appiangroupconfig_constant has invalid form, so cannot be evaluated (APNX-1-4198-000)
    Pds.evaluateExpression works if the expression rule returns a TEXT data type, but DOES NOT WORK when the rule returns a complex CDT object.
    Is there a way to read a CDT object values from Java (Filter / Smart services)?
    Thanks
    Jhothi
Reply
  • Thanks Ed for your suggestions. I have imported the complex data type already. My project requirement is to read the values of a complex data type set in Appian from Authentication Filter. I am using this filter for customizations at the time of user login. Since there is no way in a filter to read user input values, I have created an expression rule in Appian Rules tab which when evaluated returns a custom data type ( with values set) and I want those values to be read from filter.
    I used ProcessDesignService.evaluateExpression but I got the error:
    com.appiancorp.process.expression.ExpressionRuntimeException$AppianExceptionProvider: Expression evaluation error : Rule ei_appiangroupconfig_constant has invalid form, so cannot be evaluated (APNX-1-4198-000)
    Pds.evaluateExpression works if the expression rule returns a TEXT data type, but DOES NOT WORK when the rule returns a complex CDT object.
    Is there a way to read a CDT object values from Java (Filter / Smart services)?
    Thanks
    Jhothi
Children
No Data