全部, 我正在研究我們在Resin Web應用程序服務器中部署的java webapp。我一直在爲應用程序的新部分做一些XML解析,並意識到我們的應用程序正在使用Resin classes來進行解析。我想從脫身,並使用一些更標準一些原因,所以我把我的樹脂配置文件,這些系統屬性(並添加了Xerces罐子到我的類路徑):現在將XML解析器更改爲Xerces時出現JSP編譯錯誤
<system-property javax.xml.parsers.DocumentBuilderFactory="org.apache.xerces.jaxp.DocumentBuilderFactoryImpl"/>
<system-property javax.xml.parsers.SAXParserFactory="org.apache.xerces.jaxp.SAXParserFactoryImpl"/>
而且,我在幾個頁面上收到了JSP編譯錯誤(我猜Resin內置的解析器比較寬鬆)。錯誤讀取:
org.xml.sax.SAXParseException: The value of attribute "title" associated with an element type "display:column" must not contain the '<' character.
而且,「顯示:列」在一些網頁上的標籤確實包含在「標題」屬性標記。這裏有一個例子:
<display:column scope='col' class=" appealColorBG selectAllWidth"
title="<span class='centerThis'><label for='selectAll'>Select All</label><br />
<input type='checkbox' name='selectAll'
id='selectAll'
onClick='selectAllCheckboxes();'/></span> " >
這是一些醜陋的JSP代碼,我知道,但它也代碼中已有的生產,所以我猶豫去改變它。
有誰知道一種方法,我可以設置xerces,以便它將允許JSP按原樣編譯?
如果Resin默認工作,並且更改的設置沒有,那麼爲什麼更改它們? – skaffman 2010-04-19 18:18:00
Resin默認適用於JSP編譯,但我試圖解決另一個解析問題,並且我想使用Xerces,而不是構建樹脂類,這不是標準。 JSP編譯問題引起了我的不安。如果我找不到能夠讓JSP編譯的解決方案,那麼我將不得不改回來,就像你說的那樣。 – elduff 2010-04-20 14:30:55