在Eclipse中使用Apache Tomcat创建JSP文件出现Date类型无法解析报错如何解决
问题解决方案
报错的核心原因是代码第一行的page导入指令语法存在两处错误,导致JSP文件编译失败,哪怕你调用Date的时候写了全类名,也会因为前面的语法错误触发类型无法识别的报错。
原导入语句<%@ page import java.util.Date()%>不符合JSP语法规范:
import的属性值必须用英文双引号包裹- 导入类时仅需要填写全类名,不需要加表示实例化的括号
你可以选择任意一种方案修复:
方案1:修正导入语句
把第一行的导入语句改成<%@ page import="java.util.Date" %>,导入之后实例化Date可以省略全类名前缀,修改后的完整代码如下:
<%@ page import="java.util.Date" %> <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html> <html> <head> <meta charset="ISO-8859-1"> <title>Message of the Day Application</title> </head> <body bgcolor="green"> <h1 align="center">Welcome to MOTD Application</h1> <h1 align="center">Version 2.0</h1> <h1>Message of the Day: Cloud Computing is Cooler!</h1> <h2>The date and time now is <%= new Date() %></h2> </body> </html>
方案2:直接删除错误的导入语句
因为你原本调用Date的时候已经写了全类名java.util.Date(),这种场景下不需要单独导入java.util.Date,直接删掉第一行错误的导入语句也可以正常运行,修改后的代码如下:
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE html> <html> <head> <meta charset="ISO-8859-1"> <title>Message of the Day Application</title> </head> <body bgcolor="green"> <h1 align="center">Welcome to MOTD Application</h1> <h1 align="center">Version 2.0</h1> <h1>Message of the Day: Cloud Computing is Cooler!</h1> <h2>The date and time now is <%= new java.util.Date() %></h2> </body> </html>
修改完成后重新部署项目到Tomcat,刷新页面即可正常显示时间,不会再报类型无法识别的错误。
内容的提问来源于stack exchange,提问作者melololo
相关产品推荐
相关产品推荐

