我在这里发现了以下文章:JSP文件中的Lambda表达式将无法编译
因此,我在Tomcat的conf/web.xml中添加了compilerSourceVM和compilerTargetVM。(不在web.xml项目中)。
<p>
Cookies:<br />
<%
Cookie[] cookies = request.getCookies();
if ( cookies == null || cookies.length == 0 ) {
out.println("No cookies found<br/>");
} else {
out.println("Cookies found size=" + cookies.length + "<br/>");
List<Cookie> cList = Arrays.stream(request.getCookies()).collect(Collectors.toList());
for ( Cookie c : cList ) {
out.println("C: " + c + "<br/>");
}
out.println("Cookies found size=" + cookies.length + "<br/>");
}
%>
</p>
Arrays.stream(request.getCookies()).forEach(cookie -> {out.println("Cookie information here<br/>");});
org.apache.jasper.JasperException: Unable to compile class for JSP:
An error occurred at line: [53] in the jsp file: [/report.jsp]
Unhandled exception type IOException
50: } else {
51: out.println("Cookies found size=" + cookies.length + "<br/>");
52: Arrays.stream(request.getCookies()).forEach(cookie -> {
53: out.println("Cookie information here<br/>");
54: });
有什么提示吗?
提前谢了。
编辑:
Arrays.stream(request.getCookies()).forEach(cookie -> {System.out.println("Cookie information here<br/>");});
b.)out变量必须是final。因此需要final JspWriter myOut=out;
c.)您可能必须将JSP API库导入到我们的项目中。Gradle示例:providcompile'javax.servlet.JSP:javax.servlet.jsp-api:2.3.0'
是否可以尝试在web.xml中添加以下init参数,
<init-param>
<param-name>compilerSourceVM</param-name>
<param-value>1.8</param-value>
</init-param>
<init-param>
<param-name>compilerTargetVM</param-name>
<param-value>1.8</param-value>
</init-param>
我已经尝试了stackoverflow上提到的大多数建议,但还没有找到解决方案。我遇到的错误如下所示。 我正在使用IntelliJ IDEA 2016.2,并应用了这些设置。 →、到 →、到 →→→,到 →→→,到 我使用的是Tomcat V8.0.36,对于JSP servlet有以下内容。 任何建议将不胜感激!
问题内容: 考虑以下Java 8代码段。 什么是越来越编译? 我知道Lambda并没有实现为匿名内部类。但是,因此接口必须在生成某种对象,但是尚不清楚在生成哪种对象。 Java 8中是否存在某种表示lambda表达式的新型对象? 更新 这是经过反编译的程序,该程序已使用eclipse java 8编译器编译,当您打开类文件时,以下输出来自eclipse。 看起来lambda表达式已变成包含lamb
我正在使用NetBeans 8。当我的代码包含Lambda表达式并尝试编译时,我会收到以下错误消息:
问题内容: 我有以下代码: 当我通过main方法运行它时,它运行良好,但是当我尝试对其进行编译时,抛出以下错误: 我正在使用Eclipse IDE,并尝试通过命令行进行编译。 问题答案: 默认情况下,使用Java 5来编译类。引用其文档: 还要注意,当前的默认源设置是1.5,默认目标设置是1.5,与运行Maven的JDK无关。如果要更改这些默认值,则应按照设置Java编译器的- source和-t
本文向大家介绍如何编写JSP表达式?,包括了如何编写JSP表达式?的使用技巧和注意事项,需要的朋友参考一下 JSP表达式元素包含一种脚本语言表达式,该脚本语言表达式经过评估,转换为String,并插入该表达式出现在JSP文件中的位置。 由于表达式的值已转换为字符串,因此可以在JSP文件的一行文本中使用表达式,无论是否用HTML标记。 expression元素可以包含根据Java语言规范有效的任何表
JSP 表达式可以把变量或者表达式输出到网页上,不需要 out.print() 就能输出数据。通常用于打印变量和方法的值。 JSP 表达式语法如下: <%= 表达式 %> 等效于 可以将 <%=表达式 %> 理解为 <% out.println(表达式) %> 的简写方式。这里需要注意,JSP 表达式不能以分号结尾。 例 1 使用 JSP 表达式显示欢迎消息,代码如下: 浏览器输出信息为: 欢迎来