MVEL перекомпилирует аргументы метода
Рассмотрим вызов метода ниже:
$obj.get('PARAM');
где 'PARAM'
является статической строкой, то есть константой.
В идеале, MVEL должен компилировать аргумент как тип LITERAL, а не перекомпилировать его во время выполнения.
Мы используем
MVEL.compileExpression("$obj.get('PARAM')", parserContext)
Поэтому после компиляции мы ожидали, что это будет что-то похожее на
$obj.get(Literal<PARAM>)
Но мы заметили, что аргумент метода не обрабатывается как LITERAL, даже если он перекомпилирован и перекомпилирован.
Мы не хотим, чтобы MVEL перекомпилировал его во время выполнения, т.е. когдаMVEL.executeExpression(...)
' называется.
Кто-нибудь наблюдал это или знает, как можно пропустить повторную компиляцию во время выполнения или какое-либо свойство, которое можно установить, чтобы избежать этого?
Буду очень признателен за любую помощь в этом!