2013-01-22 23 views
3

我编译预上部署我的JSP页面,但不断收到这些错误:更改JSP编译器版本在GlassFish中

Caused by: org.glassfish.deployment.common.DeploymentException: JSP 
Compilation Error: org.apache.jasper.JasperException: PWC6033: Error 
in Javac compilation for JSP 

PWC6199: Generated servlet error: diamond operator is not supported in 
-source 1.5 (use -source 7 or higher to enable diamond operator 

有谁知道如何更改编译器版本和或设置来解决这个问题?我已经指示glassfish像这样使用JDK7作为java家;

asadmin set "server.java-config.java-home=/usr/java/jdk1.7.0_09" 

但是这也行不通。

回答

2

使用Maven或Ant插件预编译JSP页面,即jspc-maven-plugin。您不仅可以在构建和分期阶段获得调试问题的好处,还可以快速部署并消除挫折感。

+0

你可以看看这个问题http://stackoverflow.com/questions/38139152/glassfish-4-and-offline-jsp-compiler –

6

您需要正确设置compilerSourceVMcompilerTargetVM属性jsp-config才能使其正常工作。 Look here for more details

+0

感谢'Pangea',我已经通过我的'WEB-INF'中的'glassfish-web.xml'试过了这个,但仍然有相同的错误。执行'java -version'还会产生以下内容>>>> Java版本“1.7.0_09” Java™SE运行时环境(build 1.7.0_09-b05))。这只是拖着我坚果;-) – Bitmap

+2

在sun-web.xml中的以下内容适用于glassfish v2:' ' – Roben

0

Aravind的答案只是一个例子。这是我的工作WEB-INF\glassfish-web.xml文件:

<glassfish-web-app> 
    <jsp-config> 
    <property name="compilerSourceVM" value="8" /> 
    <property name="compilerTargetVM" value="8" /> 
    </jsp-config> 
</glassfish-web-app> 

我把这个文件里面的战争。