我正在尝试将JSP加载到JSF页面的IFrame中,但是我得到了一个奇怪的Weblogic异常,我正在尝试调试:
`####<Nov 15, 2011 1:59:58 PM EST> <Error> <HTTP> <MACHINE_NAME> <node1> <[ACTIVE] ExecuteThread: '6' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1321383598271> <BEA-101020> <[ServletContext@14841636[app:dist module:/APP_NAME path:/APP_NAME spec-version:2.5]] Servlet failed with Exception
显示java.lang.NullPointerException 在jsp_servlet._jsf。报告。 _reportlist。 jspService( _reportlist.java:149) 在weblogic.servlet.jsp.JspBase.service(JspBase.java:34) 在weblogic.servlet.internal.StubSecurityHelper $ ServletServiceAction.run(StubSecurityHelper.java:227) 在weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) 在weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) 在weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:416) 在weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:326) 在weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) 在weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)`
就应用程序而言,应用程序中的其他所有内容都运行良好,除了此错误似乎来自Weblogic Server本身。有没有其他人看到过这个错误,你问题的解决方案是什么?
更新
我在Windows上运行Weblogic 11g,并使用Weblogic附带的JSF jar,我相信2.0规范。
答案 0 :(得分:1)
jsp_servlet._jsf.reports._reportlist.jspService(_reportlist.java:149)中的java.lang.NullPointerException
该错误不是来自weblogic本身。这来自你的reportlist.jsp
。您使用旧式 scriptlet 在该JSP文件中编写Java代码,而不是在普通(更容易调试/可测试)的Java类中编写Java代码。当代码试图访问它时,某些对象是null
。
该错误也与JSF无关。将iframe的URL直接复制到浏览器的地址栏时会出现完全相同的问题。
查看Weblogic工作文件夹的_reportlist.java
文件夹中/jsp_servlet/_jsf/_reports
文件的第149行,将其追溯到公共webcontent中reportlist.jsp
文件的源代码并相应地修复它