解决JSP nullpointer异常问题

时间:2010-02-03 15:32:22

标签: java jsp servlets websphere

我正在查看一个非常古老的项目,并尝试修复此项目所面临的一些问题,这些问题与其JSP页面抛出nullpointer异常有关。 JSP页面抛出一​​个空指针异常,如下面的示例所示。

/e2fo/tools/user/search/searchUser.jsp. Exception thrown : java.lang.NullPointerException
    at com.ibm._jsp._searchUser_5F_TA._jspService(_searchUser_5F.java:207)

现在这个问题是不可重现的,所以只要看一下上面的例外,我就需要把它放在哪里可能是问题所在。 据我所知,JSP页面被编译成java servlet,因此异常堆栈中显示的.java文件是servlet文件。这是一个中间文件,我们没有看到这个,我正在运行websphere 6.1。在这种情况下,如何确定或者将servlet中的行号映射到JSP文件?

3 个答案:

答案 0 :(得分:3)

上次我碰到这个时,中间文件在我找到它的时候就消失了。我所做的是将有意的编译器错误引入JSP并再次运行它。当它遇到该异常时,它会保存Servlet源,以便您可以纠正代码错误。

我只是倾向于走到最底层并放置:

<% novariable.toString(); %>

答案 1 :(得分:1)

尝试在JSP引擎配置中使用 classdebuginfo 参数。

如果您想尝试查看生成的.java文件,则需要使用 keepgenerated 参数。

要知道在何处设置此参数,请参阅配置JSP引擎参数(http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.nd.multiplatform.doc/info/ae/ae/tweb_jspengine.html

参考:http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.nd.doc/info/ae/ae/rweb_jspengine.html

这个链接可能会有所帮助:调试服务器上的JSP文件(http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.base.iseries.doc/info/welcome_base.html

答案 2 :(得分:0)

您可以在相关服务器的工作目录中找到已编译的JSP文件。我不再做Websphere了,但我知道它是建立在Tomcat之上的,默认情况下Tomcat将已编译的JSP文件存储在安装目录的/work文件夹中。看看它,也许它使用相同的foldername。

如果仍然徒劳,那么对Websphere根文件夹中与文件名_searchUser_5F.java匹配的文件进行基于平台的文件搜索。