2010-12-09 25 views
1

我正在將我的應用程序服務器從Resin移動到Tomcat 6.在此過程中,我面臨着JSP編譯的許多問題。 (由於語法錯誤接收JasperExceptions的負載)。 我的JSP使用JSTL 1.1在Resin中編譯和平滑運行。Tomcat 6中的自定義JSP編譯器?

有什麼辦法,我可以使用樹脂的JSP編譯類即「com.caucho.jsp.JspCompiler」,而不是在Tomcat的6

提供簡單的Tomcat碧玉編譯器使用特定的編譯器,而不是碧玉

+0

你到底面臨哪些錯誤?請說出一些。 – BalusC 2010-12-09 20:45:47

+0

問題在於我們不符合JSP規範,並且Resin編譯器沒有拋出任何異常(Resin.jar中存在com.caucho.jsp.JspCompiler)。現在在Tomcat中,文章告訴我它對JSP非常嚴格標準規格。 – Reinwald 2010-12-11 06:59:27

回答

0

您是否已下載並將JSTL庫添加到您的應用程序中? Resin似乎在其發行版中包含JSTL,而Tomcat則沒有。

鑑於在Tomcat

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 
<html> 
<body> 
    <h1> 
    <c:out value="Hello World" /> 
    </h1> 
</body> 
</html> 

樣本JSP運行安裝JSTL庫之前,Tomcat的提供了以下錯誤

org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar files deployed with this application 
    at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:51) 
    at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409) 
    at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:116) 

一旦安裝JSTL庫(Download Link)錯誤消失和你好世界被印在屏幕上。

由於您沒有向我們顯示錯誤,我會假設您的錯誤可能類似。 應該不需要更改使用哪個編譯器。