You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Henri Biestro (JIRA)" <ji...@apache.org> on 2018/01/22 06:47:00 UTC

[jira] [Commented] (SCXML-279) Only use default Jexl3 setting for silent and strict, cleanup APIs accordingly

    [ https://issues.apache.org/jira/browse/SCXML-279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16333926#comment-16333926 ] 

Henri Biestro commented on SCXML-279:
-------------------------------------

In case this helps, JEXL3 still allows strict/silent settings to be dynamically changed using a JexlContext that exposes JexlEngine.Options. There is an example in the tests in the VarTest class using the ReadonlyContext. 

> Only use default Jexl3 setting for silent and strict, cleanup APIs accordingly
> ------------------------------------------------------------------------------
>
>                 Key: SCXML-279
>                 URL: https://issues.apache.org/jira/browse/SCXML-279
>             Project: Commons SCXML
>          Issue Type: Improvement
>            Reporter: Ate Douma
>            Assignee: Ate Douma
>            Priority: Major
>             Fix For: 2.0
>
>
> SCXML-183 and SCXML-258 introduced and further extended upon custom configuration of the Jexl Engine for silent and strict mode.
> While at that time using strict=false as default seemed convenient (lenient), none of the (current) tests needs this, and neither can the w3c IRP tests pass using it.
> And, since the upgrade to Jexl3 (SCXML-254) these flags no longer can be dynamically changed in Jexl: these now are set as final when a Jexl Engine is created.
> With hindsight SCXML-258 really wasn't needed for adding a quite invasive API change while it only was/would be needed when using Jexl.
> Therefore I'll remove again the API change introduced by SCXML-258.
> And also drop the strict/silent flags (and getters) from the JexlEvaluator class, and just use the default Jexl Engine settings (silent=false, strict=true)
> Anyone needing a custom Jexl Engine configuration just can/should extend the JexlEvaluator class and override the createJexlEngine() method.
> Which already was required to customize other parts of the Jexl Engine anyway.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)