gpt4 book ai didi

java - 异常创建类的bean

转载 作者:行者123 更新时间:2023-11-30 10:46:02 25 4
gpt4 key购买 nike

我是 struts 的新手,为了工作必须学习它们,我正在使用 struts 1.3,我正在尝试制作一个简单的年龄检查应用程序,它目前还没有任何业务逻辑,我只是​​想转发它到正确的页面我稍后会弄清楚其余部分,但我收到以下异常:

type Exception report

message An exception occurred processing JSP page /welcome.jsp at line 15

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 /welcome.jsp at line 15

12: <div style="color:red">
13: <html:errors />
14: </div>
15: <html:form action="/CheckAge.do" >
16: User Name : <html:text name="CheckAgeAppForm" property="name" /> <br>
17: Password : <html:text name="CheckAgeAppForm" property="age" /> <br>
18: <html:submit value="Check Age" />


Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:575)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:462)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)



root cause
javax.servlet.ServletException: javax.servlet.jsp.JspException: Exception creating bean of class coreservlets.CheckAgeAppForm: {1}
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:916)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:845)
org.apache.jsp.welcome_jsp._jspService(welcome_jsp.java:134)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:439)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)



root cause
javax.servlet.jsp.JspException: Exception creating bean of class coreservlets.CheckAgeAppForm: {1}
org.apache.struts.taglib.html.FormTag.initFormBean(FormTag.java:463)
org.apache.struts.taglib.html.FormTag.doStartTag(FormTag.java:433)
org.apache.jsp.welcome_jsp._jspx_meth_html_005fform_005f0(welcome_jsp.java:169)
org.apache.jsp.welcome_jsp._jspService(welcome_jsp.java:118)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:439)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339)
javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

struts-config的 Action 映射:

<action-mappings>


<action
path="/CheckAge"
type="coreservlets.CheckAgeAppAction"
name="CheckAgeAppForm"
scope="session"
validate="false"
input="/welcome.jsp">
<forward name="UnderAge" path="/UnderAge.jsp" />
</action>
<action path="/welcome" forward="/welcome.jsp"/>
</action-mappings>

struts-config 的表单 bean:

<form-bean
name="CheckAgeAppForm"
type="coreservlets.CheckAgeAppForm"/>
</form-beans>

welcome.jsp 文件内容:

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<div style="color:red">
<html:errors />
</div>
<html:form action="/CheckAge.do" >
User Name : <html:text name="CheckAgeAppForm" property="name" /> <br>
Password : <html:text name="CheckAgeAppForm" property="age" /> <br>
<html:submit value="Check Age" />
</html:form>
</body>
</html>

web.xml 部分:

<!-- Standard Action Servlet Mapping -->
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>

Action 表单 CheckAgeAppForm:

package coreservlets;

import org.apache.struts.action.*;

public class CheckAgeAppForm extends ActionForm {

private String name;
private String age;

public String getName(){
return (name);
}
public String getAge(){
return (age);
}
public void setName(String name){
this.name= name;
}
public void setAge(String age){
this.age = age;

}



}

CheckAgeAppAction:

package coreservlets;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.*;

public class CheckAgeAppAction extends Action
{
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception{
return mapping.findForward("UnderAge");
}
}

我将不胜感激任何对此的帮助,这让我很烦,在此先感谢

更新:包含了 Action , Action 映射也更新了

最佳答案

如果您发布的 Struts 配置在您的应用程序中,我看到一个错误,您没有在操作映射中包含前向标记,您在前向标记之前关闭了您的操作:

<action
path="/CheckAge"
type="coreservlets.CheckAgeAppAction"
name="CheckAgeAppForm"
scope="session"
validate="false"
input="/welcome.jsp">
<forward name="UnderAge" path="/UnderAge.jsp" />
</action>

关于java - 异常创建类的bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36768421/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com