Your are correct, the engine (and the parser) do use its own JexlFeatures copies (expressionFeatures/scriptFeatures members) that are never modified after creation. An equivalent rule applies for JexlOptions btw, copied for isolation for each evaluation. Those classes, by themselves, even if they are not thread-safe, never cause a thread-safety threat since they are always private unmodified copies used during evaluation.
But this does not protect against the possibility of 'thread-adverse' reserved-wordset or namespace-predicate implementations used to construct the JexlFeature instances. IMHO, trying to protect against those potential mistakes would only restrict the possibilities of valid usages. Henrib --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org