HTTP Status 500 – Internal Server Error
Type Exception Report
Message An exception occurred processing [/index.jsp] at line [31]
Description The server encountered an unexpected condition that prevented it from fulfilling the request.
Exception
org.apache.jasper.JasperException: An exception occurred processing [/index.jsp]
Root Cause
java.lang.NullPointerException
org.apache.struts2.views.jsp.TagUtils.getStack(TagUtils.java:40)
org.apache.struts2.views.jsp.StrutsBodyTagSupport.getStack(StrutsBodyTagSupport.java:40)
org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:48)
org.apache.jsp.index_jsp._jspx_meth_s_005fa_005f0(index_jsp.java:300)
org.apache.jsp.index_jsp._jspService(index_jsp.java:173)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:466)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:379)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:327)
javax.servlet.http.HttpServlet.service(HttpServlet.java:623)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
字符串
注意服务器日志中提供了根本原因的完整堆栈跟踪。Apache Tomcat/9.0.80
我无法找到确切的原因NullPointerException
来。在index.jsp
文件中,<s:a>
标记无法正常工作,它显示
org.apache.碧玉.JasperException:处理时发生异常。
如何使这个标记工作,使NullPointerException
不会发生。
1条答案
按热度按时间jm2pwxwz1#
在JSP中你已经使用了Struts标签。他们需要使用一个运行的Struts过滤器。也不要使用直接访问JSP。你使用的是Tomcat作为应用服务器。它默认配置为使用
index.jsp
作为欢迎页面,并在Tomcat中默认由servlet提供服务。这里甚至不涉及Struts。所以,Struts标签将无法工作。在后台,如果您查看stacktrace,您将看到
<s:a>
标记试图从action上下文获取值堆栈,但它是null
,因为请求不是由Struts过滤器提供的。你需要的是学习Struts应用程序的基础知识。这里有一个来自Struts入门文档How to create Struts 2 Web application的示例教程。特别是第5节,你可以看到Struts过滤器的配置。