MVEL перекомпилирует аргументы метода

Рассмотрим вызов метода ниже:

$obj.get('PARAM');

где 'PARAM' является статической строкой, то есть константой.

В идеале, MVEL должен компилировать аргумент как тип LITERAL, а не перекомпилировать его во время выполнения.

Мы используем

MVEL.compileExpression("$obj.get('PARAM')", parserContext)

Поэтому после компиляции мы ожидали, что это будет что-то похожее на

$obj.get(Literal<PARAM>)

Но мы заметили, что аргумент метода не обрабатывается как LITERAL, даже если он перекомпилирован и перекомпилирован.

Мы не хотим, чтобы MVEL перекомпилировал его во время выполнения, т.е. когдаMVEL.executeExpression(...)' называется.

Кто-нибудь наблюдал это или знает, как можно пропустить повторную компиляцию во время выполнения или какое-либо свойство, которое можно установить, чтобы избежать этого?

Буду очень признателен за любую помощь в этом!

0 ответов

Другие вопросы по тегам