当前位置: 首页 > 知识库问答 >
问题:

HTTP状态500-在Struts2应用程序中处理JSP页面时发生异常

耿玄裳
2023-03-14

我正在学习Struts2,在托管我的应用程序时面临以下问题。索引。jsppage,带有/struts标记示例

项目中使用的罐子:

common-lang3.jar
commons-fileupload-1.3.jar
commons-io-2.0.1.jar
commons-logging-1.1.3.jar
commons-logging-api-1.1.jar
freemarker-2.3.19.jar
javassist-3.11.0.GA.jar
ognl-3.0.6.jar
struts2-core-2.3.15.3.jar
xwork-core-2.3.15.3.jar

异常堆栈跟踪:

    **HTTP Status 500 - An exception occurred processing JSP page /index.jsp at line 12**
    **type** Exception report
    **message** An exception occurred processing JSP page /index.jsp at line 12

    **description** The server encountered an internal error that prevented it from fulfilling this request.

    **exception**
    org.apache.jasper.JasperException: An exception occurred processing JSP page /index.jsp at line 12

    9: </head>
    10: 
    11: <body>
    12:    <s:form action="empinfo" method="post">
    13:       <s:textfield name="name" label="Name" size="20" />
    14:       <s:textfield name="age" label="Age" size="20" />
    15:       <s:submit name="submit" label="Submit" align="center" />


    Stacktrace:

 org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:521)
        org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:412)
        org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
        org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
        org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:96)

    **root cause**
    javax.servlet.ServletException: java.lang.NoSuchMethodError: org.apache.commons.lang3.StringUtils.containsIgnoreCase(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
        org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:865)
        org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:794)
        org.apache.jsp.index_jsp._jspService(index_jsp.java:84)
        org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
        org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
        org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
        org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
        org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:96)

    **root cause**
    java.lang.NoSuchMethodError: org.apache.commons.lang3.StringUtils.containsIgnoreCase(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
        org.apache.struts2.views.util.DefaultUrlHelper.buildUrl(DefaultUrlHelper.java:180)
        org.apache.struts2.views.util.DefaultUrlHelper.buildUrl(DefaultUrlHelper.java:75)
        org.apache.struts2.views.util.DefaultUrlHelper.buildUrl(DefaultUrlHelper.java:70)
        org.apache.struts2.components.ServletUrlRenderer.renderFormUrl(ServletUrlRenderer.java:200)
        org.apache.struts2.components.Form.populateComponentHtmlId(Form.java:231)
        org.apache.struts2.components.UIBean.evaluateParams(UIBean.java:801)
        org.apache.struts2.components.ClosingUIBean.start(ClosingUIBean.java:55)
        org.apache.struts2.views.jsp.ComponentTagSupport.doStartTag(ComponentTagSupport.java:53)
        org.apache.jsp.index_jsp._jspx_meth_s_005fform_005f0(index_jsp.java:104)
        org.apache.jsp.index_jsp._jspService(index_jsp.java:74)
        org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
        org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
        org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
        org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
        org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:96)

索引。jsp页面:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
   pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Employee Form</title>
</head>

<body>
   <s:form action="empinfo" method="post">
      <s:textfield name="name" label="Name" size="20" />
      <s:textfield name="age" label="Age" size="20" />
      <s:submit name="submit" label="Submit" align="center" />
   </s:form>
</body>
</html>

struts。xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
   "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
   "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
 <constant name="struts.devMode" value="true" />
   <package name="helloworld" extends="struts-default">
      <action name="empInfo" class="com.tutorialspoint.struts2.EmployeeAction" method="execute">
            <result name="input">/index.jsp</result>
            <result name="success">/success.jsp</result>
      </action>
   </package>
</struts>

web.xml代码:

<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
    <display-name>HelloWorldStruts2</display-name>
    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
    <filter>
        <filter-name>struts2</filter-name>
        <!--<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>-->
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-app>

请建议我如何解决这个问题。


共有1个答案

令狐声
2023-03-14

您的项目中似乎部署了不完整的库JAR。尝试从maven repository下载所需的JAR,或在struts发行版lib文件夹中查找它们。

commons-lang3-3.1.jar

不见了。

了解如何创建maven项目。

 类似资料:
  • 我正在使用Eclipse和Tomcat Server 7开发一个带有String框架的web应用程序。当我运行它时,我总是得到同样的错误: HTTP状态500-处理JSP页面/views/misc/index时发生异常。jsp第19行 第19行是:<代码> 有时候在我不停刷新页面的时候是可以的,但是不知道为什么。 misc/index.jsp 这是欢迎视图的index.jsp页面 堆栈跟踪: 根本

  • 我有jsp和html页面的应用程序 说明服务器遇到一个内部错误,使其无法满足此请求。 例外 NestedServletException:处理程序处理失败;嵌套异常是java.lang.NosuchMethoderror:javax.servlet.http.HttpServletResponse.getHeader(ljava/lang/string;)ljava/lang/string;rig

  • 请帮助我更好地学习Spring 3 MVC的基础知识,我试图学习Spring JSR303:Bean验证,但根本无法解决以下问题,我已经花了一天多的时间来解决这个问题:( 我想要一个简单的验证在这里工作。jsp中的name、password和email字段不能留空,这是我们的目标。到目前为止,每次尝试将所有字段都为空提交hello.jsp时,都会遇到以下错误 HTTP状态500-处理程序处理失败;

  • 我正在spring工具套件中创建注册表。创建项目后,它运行良好。跑步时显示欢迎信息。但是,每当我用jsp和spring标记库创建主页时,都会出现以下错误 HTTP状态500-在第23行处理JSP页面 /WEB-INF/views/home.jsp时发生异常 当我从表中删除字段时,它运行良好,显示了hrading等。但是当创建字段时,它会出错 家.jsp 控制器类 pom.xml 服务环境.xml

  • 这个问题听起来可能重复,但事实是,我还没有收到解决方案。我刚刚进入struts2,正在尝试一个登录应用程序。我附上了以下图书馆: 当我单独运行正常的JSP页面(没有struts标记)时,它运行正常。但每当我单独运行带有struts标记的jsp页面时,它都会显示。在创建整个网络之后。xml和struts。xml并运行它报告的整个应用程序。我知道问题是我的jsp页面没有被识别。请帮忙。 网状物xml:

  • 这是我的同意模式 这是同意控制器获取声明 这是声明后的同意 同意html thymeleaf表单是 提交表格后。我得到这个错误 HTTP状态500-请求处理失败;嵌套异常是org.thymeleaf.exceptions.TemplateProcessing异常:异常评估SpringEL表达式:"user.providers"(提供者/createOrUpdateConentForm 组织。spr