我开发了一个web应用程序,并使用NetBeans6.9创建了war文件。我在jsp和Java文件中都广泛使用了java 5特性。在查看包含“每个循环”的jsp页面时,在进行部署后,我会收到错误消息,其中说,
“每个”语句只有在源代码级别为5.0时才可用
我读过WAS6.1对Java5特性的支持。还检查了java/bin中的jdk版本,它是IBMJDK1.5。
我也尝试了此页中的指令。我怀疑在创建war文件以使部署与Java5兼容时,是否需要进行任何设置,或者是否有任何服务器/应用程序级别的设置要在IBM中完成?
发布于 2011-05-03 14:15:11
正如您所发现的,问题在于基于是6.1 JSP引擎的JSP2.0 (针对Java1.3)。我想您已经找到了正确的参数:
jdkSourceLevel JSP参数是在WebSphere ApplicationServerVersion6.1中引入的,以支持JDK5。虽然编译WithAssert在版本6.1中仍然有效,但应该使用此参数来代替compileWithAssert参数。此参数的默认值为13。此参数需要重新生成Java源代码。以下是jdkSourceLevel参数值:
我假设您已经在对的地方中设置了正确的情况,并重新启动了服务器。我还将检查您的web.xml 声明Servlet2.4模式,以防这影响到JSP引擎。如果失败,请检查支持站点以获得修复。
如果其他所有操作失败,您应该能够使用JspBatchCompiler或蚂蚁任务预编译JSP。
我会问你为什么要使用scriptlet,但这是另一种对话。
https://stackoverflow.com/questions/5869973
复制相似问题