jsp泛型支持
- 今天在使用idea做练习时,某个jsp页面报错如下:
'<>'operator is not allowed for source level below 1.7
出错代码如下:Map<String, String> genders = new HashMap<>();
不难看出报错的原因是编译版本低于1.7时,’<>’这种省略类型的泛型语法不可用。 - 搜索该错误,得到的答案大约为两种:
- 大部分复制粘贴的答案都是在eclipse中遇见的该错误,解决方案是设置项目的java编译版本和jdk版本为1.7及以上。检查了我的idea的相关设置,都是1.8的版本没问题,该答案没有解决我的问题;
- 在使用泛型时不要写省略语法:
Map<String, String> genders = new HashMap<String, String>();
可是这样等于使用了老版本的java语法,并没解决根本问题
- 解决方法:
这里的问题其实是本地安装的tomcat中配置的jsp编译版本是低于1.7的,而设置IDE中的编译版本并不能解决这个问题,这里需要找到本地tomcat的安装目录下的web.xml文件,路径如下:\Tomcat\Tomcat7.0\conf\web.xml,打开以后找到JspServlet的配置如下:
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>fork</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>xpoweredBy</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup></load-on-startup>
</servlet>
在其中添加jsp编译版本的设置:
<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>
保存,OK,然后要记得在IDE中重新发布项目(注意清理缓存),在访问原来出问题的jsp页面,这次就不会报错了~
- 涉及到的各个工具及版本:
IntelliJ IDEA 2017.1 x64
Tomcat 7.0
jdk1.8.0_65
jsp泛型支持的更多相关文章
- spring boot: 支持jsp,支持freemarker
spring boot: 支持jsp,支持freemarker 支持jsp: 加入依赖 <!--jsp--> <dependency> <groupId>org.a ...
- Jfinal极速开发微信系列教程(三)--------------对JSP的支持以及部署Tomcat运行异常问题
本文章主要解决以下问题: 1.Jfianl对JSP的支持2.Jfianl Maven项目部署到Tomcat,启动项目异常问题解决 第一个问题重现截图解决方案:1.在configConstant中添加视 ...
- 详解SpringBoot 添加对JSP的支持(附常见坑点)
序言: SpringBoot默认不支持JSP,如果想在项目中使用,需要进行相关初始化工作.为了方便大家更好的开发,本案例可直接作为JSP开发的脚手架工程 SpringBoot+War+JSP . 常见 ...
- springboot新增jsp的支持
一.添加依赖 <!-- 添加对jsp的支持 --> <!-- web 依赖 --> <dependency> <groupId>org.springfr ...
- springboot开发之使用外部servlet容器及对jsp的支持
一般而言,springboot是使用自己内嵌的servlet容器,比如tomcat等等,而且默认的模板引擎是thymeleaf,那么如何让springboot使用外部的servlet容器并支持对jsp ...
- JSP不支持EL表达式的解决方案
EL的全称是Expression Language.1.在默认情况下,Servlet 2.3 / JSP 1.2是不支持EL表达式的,而Servlet 2.4 / JSP 2.0支持. servlet ...
- jsp无法支持el标签及jstl标签
在jsp页面头部添加如下 <%@ page isELIgnored="false"%> <%@ taglib uri="http://java.sun. ...
- SpringBoot添加对jsp的支持
1.在pom.xml添加如下内容: <dependency> <groupId>org.apache.tomcat.embed</groupId> <arti ...
- 深入刨析tomcat 之---第21篇 tomcat 对jsp页面支持的实现原理
writedby 张艳涛 web技术,以前的动态网页技术多是jsp页面,比如点击一个菜单目录,直接访问了一个LRJSDetailInput.jsp页面,这个页面 有<html><bo ...
随机推荐
- hadoop学习之yarn资源管理
一.yarn简介 yarn是在hadoop2.x中才引入的一个新的机制,在hadoop1.x中MapReduce任务需要同时做任务管理和资源分配,那么引入yarn之后,hadoop的资源管理的任务就全 ...
- HDU2643(SummerTrainingDay05-P 第二类斯特林数)
Rank Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- Django Rest framework 之 分页
RESTful 规范 django rest framework 之 认证(一) django rest framework 之 权限(二) django rest framework 之 节流(三) ...
- 从零开始学习html(十二)CSS布局模型——上
一.css布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了. 布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是建立在盒模型基础之 ...
- 转:Drupal 如何得到字段的值?
原文地址:Drupal 如何得到字段的值? 直接的方法如下: $node = node_load($nid); $field_val = $node->field_name['und'][0][ ...
- Java 接口和抽象类区别(写的很好,转了)
原文:http://blog.csdn.net/sunboard/article/details/3831823 1.概述 一个软件设计的好坏,我想很大程度上取决于它的整体架构,而这个整体架构其实就是 ...
- Expo大作战(十三)--expo如何自定义状态了statusBar以及expo中如何处理脱机缓存加载 offline support
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- D3、EChart、HighChart绘图demol
1.echarts: <!DOCTYPE html> <html> <head> <meta charset="utf-8" ...
- css继承属性与非继承属性
一.无继承性的属性 1.display:规定元素应该生成的框的类型 2.文本属性: vertical-align:垂直文本对齐 text-decoration:规定添加到文本的装饰 text-shad ...
- jboss eap6.1(4)(部署应用)
1.添加应用war包 手动部署,添加war包到standalone\deployments下,手工创建一个文件,如war包名称是a.war,创建一个a.war.deployed文件,内容随意. 2. ...