jsp可怕的调试深渊

佡ふ_隐儿

原本运行的好好的jsp文件,重启了项目突然无法显示了。后台没有报错,页面也没有报错,就是直接页面只加载了一部分,然后后面的代码没了,直接懵逼了。由于我之前刚注释了一些代码,本能反应是注释导致的问题,于是放开注释再试了一下,还是不行。然后只能在庞大的jsp代码中找各种用到el表达式的地方,看看哪里可能会出问题。初看了一遍不行,就到测试服务器上试了一下,发现测试服务器也出现了相同问题。然后看到上面只显示了表格中第一行的一部分,而且这行数据是新加的。我想应该就是这里出问题了。

于是到数据库中一查,发现新加的数据跟别的数据有一项不同:createTime为空!然后又看了看jsp里相应的地方:


<td>

<jsp:useBean id="modelDate" class="java.util.Date"/>

<c:set target="${modelDate}" property="time" value="${model.createTime}"/>

<fmt:formatDate pattern="yyyy-MM-dd" value="${modelDate}" type="both"/>

</td>

这就很明了了,createTime为null,但是jsp调用了这个值,导致出错了。但是关键是出错了竟然没有任何报错!这就是jsp可怕的地方:出问题了不知道问题出在哪里,只能瞎猜,一点点排查。如果是复杂页面的话,将相当痛苦。其实我这已经算比较复杂的页面了,好在比较熟悉,维护了很久,要不然得哭死。

主 楼 发布于:2019-08-16 15:10:31回复
深麦丶点

没图你说个J8

2 楼 发布于:2020-04-10 15:35:28
回复

发表回复: