避免在 JSP 標籤中以巢狀方式放置單引號或雙引號

當 JSP 標籤中以巢狀方式將單引號放置在單引號內或將雙引號放置在雙引號內,此規則會將該 JSP 標籤標示出來。

範例 1:
<c:if test="<%=(link.indexOf(':') == -1)%>" >

在這個範例中,test 屬性含有字元順序 ':',它以巢狀方式放置在外部單引號 '<%=(link.indexOf(':') == -1)%>' 內。 此規則會標示這個範例。

原始檔掃描器提供了此規則的快速修正程式。 快速修正程式會跳出巢狀引號。 在範例中,會跳出含括 ':' 的引號。

套用了快速修正程式的範例 1:
<c:if test="<%=(link.indexOf(\':\') == -1)%>" >

當 JSP 標籤中出現巢狀引號時,可能導致類似下列範例的錯誤訊息:

Error Message:JSPG0048E: Page failed to validate using taglib validator for ... : org.xml.sax.SAXParseException: Attribute name "jsp:id" associated with an element type "c:if" must be followed by the " = " character.
Root Cause:com.ibm.ws.jsp.translator.JspTranslationException: JSPG0048E: Page failed to validate using taglib validator for...

如需相關資訊,請參閱: