大家好,我是雄雄,欢迎关注微信公众号【雄雄的小课堂】。
前言
好不容易将代码都写完了,结果一运行,报错!!HTTP Status 500 - Unable to convert string "${book.btime}" to class "java.util.Date" for attribute "value": Property Editor not registered with the PropertyEditorManager。
01
发现Bug
原来写的项目没有用maven,是可以正常运行的,在用maven搭建ssm框架做案例的时候,代码还是原来的代码,但是运行的时候报错,错误信息为:
HTTP Status 500 - Unable to convert string "${book.btime}" to class"java.util.Date" for attribute "value": Property Editor not registered with the PropertyEditorManager。
出错之后先看了看idea的控制台:
发现是没有问题的(其实直接分析错误进行,只是习惯了报错就去看控制台……),那就是前端的问题,进一步分析错误,是格式转换的异常。无法将字符串“ $ {book.btime}”转换为属性“值”的类“ java.util.Date”,
02
解决Bug
问题知道了,原因也知道了,那么怎么解决呢?只需要在当前页面(index.jsp)中前面加入一行代码:
<%@ page isELIgnored="false"%>
<%@ page isELIgnored="false"%>的作用是什么呢?
原来,在每个JSP中都可以指定该JSP是否使用EL。在page directive中的isELIgnored属性用来指定是否忽略。格式为:
<%@ page isELIgnored="true|false"%>
如果设定为true,也就是EL被忽略,那么JSP中的表达式被当成字符串处理。比如我上面的字符串想要以日期类型来显示,当然转换错误,而isELIgnored="false"时把${book.btime}解析成日期格式再显示出来,故正常显示,问题解决。
今天的分享就到这里啦~
往期精彩
如何给你的Idea换一个好看漂亮的主题
2021-02-24
实例!使用Idea创建SSM框架的Maven项目
2021-02-23
手把手教你搭建Maven项目
2021-02-22
新春视频剪辑
2021-02-21
点分享
点点赞
点在看