Это правило отмечает элементы языка выражений (EL) JSP, содержащие переменные с именами, содержащими ключевые слова Java или зарезервированные ключевые слова EL.
Начиная с WebSphere Application Server версии 8, проверка процессора языка выражений стала более строгой. Проверка идентификаторов переменных EL выполняется для гарантии, что в них не содержатся ключевые слова Java или зарезервированные слова EL. Если идентификатор переменной в сценарии JSTL/EL включает ключевые слова Java или зарезервированные ключевые слова EL, то файл JSP не будет переведен, и во время выполнения возникнет исключительная ситуация com.ibm.ws.jsp.translator.JspTranslationException.
Это правило отметит любой элемент языка выражения, содержащий переменные, в которые включено любое ключевое слово из текущего набора зарезервированных слов Java.
Правило пометит также использование зарезервированных слов JSP в переменных.
Для устранения неполадки необходимо изменить исходный код Java и JSP и исключить из него зарезервированные ключевые слова. Если изменений слишком много, то с помощью системного свойства можно вернуть уровень проверки, принятый до версии 8. Для возврата к предыдущему уровню проверки присвойте системному свойству JVM
org.apache.el.parser.SKIP_IDENTIFIER_CHECK
значение true.
${testObject.class.name eq 'SomeValue'}
будет помечен, так как переменная
testObject.class.name
содержит ключевое слово Java
class
.
Если эту ошибку не устранить, то выражение приведет к возникновению ошибки времени выполнения, похожей на следующую:
Если обработка языка выражений запрещена, элементы в файле JSP помечены не будут.
Например, если директиве
isELIgnored
page
присвоено значение true, обработка языка выражений будет отключена. Правило не будет отмечать в файле JSP элементы, помеченные с помощью этой директивы.
Обработку языка выражений можно также отключить с помощью элемента
el-ignored в файле web.xml. В следующем примере webIgnored.jsp не будет отмечен правилом.
Обработка языка выражений всегда выключена для веб-модулей с версией сервлета 2.3 или ниже.
Дополнительная информация: