本人现在学struts2的数据校验,看书上的例子,自己动手不知道为什么老报 No result defined for action com.action.ValidateAction and result input 和 No result defined for action com.action.ValidateAction and result success错误 求高手帮下!源代码:ValidateAction.java(包名com.action)package com.action;import com.opensymphony.xwork2.ActionSupport;public class ValidateAction extends ActionSupport{
private String name;
private String pass; public String execute() throws Exception {
return SUCCESS;
} public void validate() {
if (name == null || name.length() < 6 || name.length() > 15) {
addFieldError("name", "用户姓名不符合要求,请重新输入!");
}
if (pass == null || pass.length() < 6 || pass.length() > 20) {
addFieldError("pass", "密码长度不符合要求,请重新输入!");
}
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getPass() {
return pass;
} public void setPass(String pass) {
this.pass = pass;
}
}
struts.xml文件<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<include file="struts-default.xml" />
<package name="convert" extends="struts-default" namespace="/bbs">
<action name="validate" class="com.action.ValidateAction">
<result name="input">/validate.jsp</result>
<result name="success">/success.jsp</result>
</action>
</package>
</struts> success.jsp页面<%@ page language="java" contentType="text/html; charset=gb2312"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>添加成功页面</title>
</head>
<body>
<center>
<div>
<h2>
登录成功!
</h2>
<br />
您的信息如下:
<br />
用户名:
<s:property value="name" />
<br />
密码:
<s:property value="pass" />
</div>
</center>
</body>
</html>validate.jsp页面<%@ page language="java" contentType="text/html; charset=gb2312"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>validate数据校验</title>
</head>
<body>
<center>
<div style="color: red;">
<s:fielderror />
</div>
<s:form action="validate.action" method="post" namespace="/bbs">
<s:textfield name="name" label="姓名" />
<s:password name="pass" label="密码" />
<s:submit value="提交" />
</s:form>
</center>
</body>
</html>求高手帮下,谢谢!
private String name;
private String pass; public String execute() throws Exception {
return SUCCESS;
} public void validate() {
if (name == null || name.length() < 6 || name.length() > 15) {
addFieldError("name", "用户姓名不符合要求,请重新输入!");
}
if (pass == null || pass.length() < 6 || pass.length() > 20) {
addFieldError("pass", "密码长度不符合要求,请重新输入!");
}
} public String getName() {
return name;
} public void setName(String name) {
this.name = name;
} public String getPass() {
return pass;
} public void setPass(String pass) {
this.pass = pass;
}
}
struts.xml文件<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<include file="struts-default.xml" />
<package name="convert" extends="struts-default" namespace="/bbs">
<action name="validate" class="com.action.ValidateAction">
<result name="input">/validate.jsp</result>
<result name="success">/success.jsp</result>
</action>
</package>
</struts> success.jsp页面<%@ page language="java" contentType="text/html; charset=gb2312"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>添加成功页面</title>
</head>
<body>
<center>
<div>
<h2>
登录成功!
</h2>
<br />
您的信息如下:
<br />
用户名:
<s:property value="name" />
<br />
密码:
<s:property value="pass" />
</div>
</center>
</body>
</html>validate.jsp页面<%@ page language="java" contentType="text/html; charset=gb2312"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>validate数据校验</title>
</head>
<body>
<center>
<div style="color: red;">
<s:fielderror />
</div>
<s:form action="validate.action" method="post" namespace="/bbs">
<s:textfield name="name" label="姓名" />
<s:password name="pass" label="密码" />
<s:submit value="提交" />
</s:form>
</center>
</body>
</html>求高手帮下,谢谢!
<result name="input">/validate.jsp</result>
public String validate(){}这样,然后在方法里return 返回SUCCESS或INPUT
(PS:建议 最不要使用 validate这样的字眼,因为框架里已经有这样的方法了)