2014-01-23 31 views
0

我使用jboss和jdk1.6 ...在我的java代碼中大量使用泛型,它工作正常。但是當我在jsp中使用時;它看起來像JSP容器使用jdk1.4 ..JSP編譯失敗,因爲它使用jdk1.4,雖然我的jboss使用jdk 1.6

如何使JSP容器也使用相同的JDK作爲我的jboss使用?

+0

您可以發佈您的代碼塊未編制? – 3bu1

+1

簡單列表沒有編譯..這是jdk1.0的一個特性 – Deepak

+0

您是否嘗試卸載除jdk1.6 – 3bu1

回答

1

我到JBoss 4.0.5 GA bin文件夾

rem Include the JDK javac compiler for JSP pages. The default is for a Sun JDK 
rem compatible distribution to which JAVA_HOME points 

set JAVAC_JAR=%JAVA_HOME%\lib\tools.jar 

發現這個代碼run.bat根據這一點,如果你點了JAVA_HOME到JDK 1.6正常。它應該編譯JSP與該版本

+0

試過這個,但沒有幫助。即使嘗試導出JAVAC_JAR =「$ JAVA_HOME/lib/tools.jar」,但結果相同。在run.sh中爲JAVAC_JAR標記了回顯;獲取這個值:/usr/lib/jvm/jdk1.6.0_37/lib/tools.jar這也是好的 – Deepak

2

我有同樣的問題

類型集合不是通用的;它不能用參數參數化<? extends E>

而原因是類路徑中的邪惡「cryptix-jce-compat.jar」。

這個邪惡的jar包含一個java/util/List.class以及java/util/ArrayList.class(和所有其他),它隱藏了相對的jre類。

檢查,如果你有類似的情況,也許jarscan可以幫助

+0

沒有掃描..但沒有發現。 – Deepak

1

的Tomcat 5.5.20使用的Servlet 2.4JSP 2.0J2EE 1.4平臺。 JDK 1.5引入了泛型,它允許您對類型進行抽象。

所以,在你的情況下,如果你正在升級JDK你應該重新安裝你的servlet容器。但請注意,JBoss 4.2.0及更高版本不會與捆綁在一起Tomcat並且被稱爲JBossWeb。它是獨立的Tomcat代碼庫。所以,你不能升級Tomcat沒有升級JBoss

請參見

+1

根據http://archive.apache.org/dist/tomcat/tomcat-5/v5.5.20-copyforpermissions/bin/README.html默認情況下,Tomcat需要JRE5。但是,我很確定升級容器是最可能的解決方案。 JBoss AS 4.0.5已經有8年的歷史,並且沒有得到支持。 – Steve

相關問題