Această regulă semnalează elementele limbajului de expresii (EL) JSP care conţin variabile cu nume care conţin cuvinte cheie Java sau cuvinte rezervate EL.
Începând cu WebSphere Application Server Versiunea 8, validarea procesorului EL (expression language) devine mai strictă. Identificatorii de variabilă EL sunt verificaţi pentru a nu conţine cuvinte cheie Java sau cuvinte rezervate EL. Dacă un identificator de variabilă utilizat într-un script JSTL/EL
include fie cuvinte cheie Java, fie cuvinte rezervate EL, fişierul
JSP nu va fi translatat şi este aruncată o com.ibm.ws.jsp.translator.JspTranslationException la momentul rulării.
Această regulă va semnala orice element de limbaj de expresie care conţine variabile care includ oricare din setul curent de cuvinte cheie rezervate Java.
Regula va semnala de asemenea utilizarea cuvintelor rezervate JSP în variabile.
Problema poate fi rezolvată prin modificarea codului JSP şi Java pentru a elimina utilizarea cuvintelor rezervate JSP. Dacă această modificare are o întindere prea mare, este disponibilă o
proprietate sistem pentru revenirea la comportamentul anterior
Versiunii 8. Setaţi proprietatea JVM org.apache.el.parser.SKIP_IDENTIFIER_CHECK la
valoarea true pentru a reveni la comportamentul anterior.
${testObject.class.name eq 'SomeValue'}
este semnalat deoarece testObject.class.name conţine cuvântul cheie Java class.
Dacă nu este corectată, această expresie va produce o eroare la momentul rulării, similară cu:
Dacă procesarea limbajului de expresii este dezactivată, elemente din fişierul JSP nu vor fi semnalate.
De exemplu, procesarea limbajului de expresii este dezactivată când directiva
isELIgnored page este setată la true. Regula nu semnalează elementele dintr-un fişier JSP marcat cu această directivă.
Procesarea limbajului de expresii poate fi de asemenea dezactivată utilizând elementul web.xml, el-ignored. În acest exemplu, webIgnored.jsp nu va fi semnalat de această regulă.
Procesarea limbajului de expresii este întotdeauna dezactivată pentru module web la versiunea de Servlet 2.3 sau mai mică.
Pentru informaţii suplimentare, vedeţi