'<>'运算符不允许源代码级别低于1.7


4

我使用Create-web-application-staging.bat脚本在Tomcat上安装了DXA 1.2 JAVA Web应用程序。大部分网站都能正常工作,但头文件无法呈现并显示错误消息(请参见屏幕截图)。

enter image description here

日志告诉我,什么是错的语言选择。

2016-01-07 17:05:04,023 ERROR EntitiesTag - Error while processing entity tag 
org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: 17 in the jsp file: /WEB-INF/Views/Core/Entity/LanguageSelector.jsp 
'<>' operator is not allowed for source level below 1.7 

complete log...

我运行Java 1.7,我知道DXA编译为至少1.7。问题出在Tomcat或JSP设置中,该设置将.jsp编译为JAVA 1.6配置文件。

如何让Tomcat正常编译?

4

将这些行添加到Apache的Tomcat 7.0\conf\web.xml中的JSP servlet设置中。

<init-param>          
    <param-name>compilerSourceVM</param-name> 
    <param-value>1.7</param-value> 
</init-param> 
<init-param> 
    <param-name>compilerTargetVM</param-name> 
    <param-value>1.7</param-value> 
</init-param> 

more...

另见https://stackoverflow.com/a/11810014/1678525https://tomcat.apache.org/tomcat-7.0-doc/jasper-howto.html

  0

一直是受害者&我也想知道为什么它说我用下面的东西1.7时,我是not.You应该标记为答案 08 1月. 162016-01-08 04:26:07


4

你可能会使用Tomcat 7,在默认情况下不允许的Java钻石般的语法1.7特定的东西。 它可以被配置为允许它,但:http://censore.blogspot.nl/2015/04/how-to-set-tomcat-7-source-level-to.html

  0

我来与之前2分钟相同的结论;) 07 1月. 162016-01-07 19:12:44

+1

确实使用Tomcat 7,这是SDL Tridion 2013 SP1支持的最新Tomcat版本。 07 1月. 162016-01-07 19:14:40