回顧一些遺留的源文件,我碰到一個JSP來用下面的代碼:NetBeans&JSP:如何糾正/避免HTML解析錯誤?
<%@page pageEncoding="UTF-8"
language="java"
contentType="text/html" %>
<%-- omitted... --%>
<c:set var="abtNummer" value="0"/>
<%-- omitted... --%>
<c:set var="abtNummer" value="${abtNummer + 1}"/>
<a href="#abt${abtNummer}"> ${section}</a>
<%-- omitted... --%>
NetBeans被報告如下解析錯誤的<a href...>
元素:
Bad value "#abt " for attribute "href" on element "a": DOUBLE_WHITESPACE in
FRAGMENT.
Syntax of IRI reference:
Any URL. For example: '/hello', '#canvas', or 'http://example.org/'. Characters
should be represented in NFC and spaces should be escaped as '%20'.
我要說的是,NetBeans是試圖在生活解析期間解決${abtNummer}
?
abtNummer
和section
都有有效的運行時間值,實際上,代碼有效。在閱讀JSP和EL規範(我不是Java EE專家)幾個小時後,並且搜索NetBeans錯誤之後,我確信自己的行爲完全合法,並且不需要任何改進。
我正要提交一個針對NetBeans的錯誤,但我不確定這是否是一個錯誤:是否有任何要添加到此JSP的信號來表明NetBeans不驗證這些屬性的動態內容?或者我只是做錯了什麼?
編輯:
我已經申請了一個錯誤:Wrong html parsing error when editing jsp fragment
測試與NetBeans 7.1和7.1.2。
來吧報告這個錯誤。同時檢查Netbeans設置,以關閉EL驗證,如果這個錯誤困擾你。因爲我不使用Netbeans,所以我無法從頭開始說明這個設置是否存在,以及在哪裏可以找到它。至少,Eclipse在EL驗證方面有類似的怪癖(但不是特別的這個)。 – BalusC
@BalusC錯誤報告 – Alberto