//表单提交的部分
<body>
<s:fielderror/>
<form action="${pageContext.request.contextPath}/person/manage_update.action" method="post">
用户名:<input type="text" name="username"><br>
手机号:<input type="text" name="phone"><br>
<input type="submit" value="提交">
</form>
</body>//action部分
package com.yt;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;public class MessageAction extends ActionSupport{
private static final long serialVersionUID = 1L;
private String username;
private String phone;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String update(){
ActionContext.getContext().put("message", "更新成功!");
return "message";
}
public String save(){
ActionContext.getContext().put("message", "保存成功!");
return "message";
}
}
//xml配置部分 MessageAction_validation.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.3//EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="username">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>用户名不能为空!</message>
</field-validator>
</field>
<field name="phone">
<field-validator type="requiredstring">
<message>手机号不能为空!</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[^1[358]\d{9}$]]></param>
<message>手机号格式不正确!</message>
</field-validator>
</field>
</validators>//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.action.extension" value="do,action"/>
<constant name="struts.i18n.encoding" value="UTF-8"/>
<constant name="struts.multipart.maxSize" value="10701096"/>
<package name="person" namespace="/person" extends="struts-default">
<action name="manage_*" class="com.yt.MessageAction" method="{1}">
<result name="input">/index.jsp</result>
<result name="message">/message.jsp</result>
</action>
</package>
</struts>
我的输入为空,提交居然显示相应的更新成功,也就是没有在xml里没有校验,我仔细检查了,不知道原因
<body>
<s:fielderror/>
<form action="${pageContext.request.contextPath}/person/manage_update.action" method="post">
用户名:<input type="text" name="username"><br>
手机号:<input type="text" name="phone"><br>
<input type="submit" value="提交">
</form>
</body>//action部分
package com.yt;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;public class MessageAction extends ActionSupport{
private static final long serialVersionUID = 1L;
private String username;
private String phone;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
public String update(){
ActionContext.getContext().put("message", "更新成功!");
return "message";
}
public String save(){
ActionContext.getContext().put("message", "保存成功!");
return "message";
}
}
//xml配置部分 MessageAction_validation.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.3//EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="username">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>用户名不能为空!</message>
</field-validator>
</field>
<field name="phone">
<field-validator type="requiredstring">
<message>手机号不能为空!</message>
</field-validator>
<field-validator type="regex">
<param name="expression"><![CDATA[^1[358]\d{9}$]]></param>
<message>手机号格式不正确!</message>
</field-validator>
</field>
</validators>//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.action.extension" value="do,action"/>
<constant name="struts.i18n.encoding" value="UTF-8"/>
<constant name="struts.multipart.maxSize" value="10701096"/>
<package name="person" namespace="/person" extends="struts-default">
<action name="manage_*" class="com.yt.MessageAction" method="{1}">
<result name="input">/index.jsp</result>
<result name="message">/message.jsp</result>
</action>
</package>
</struts>
我的输入为空,提交居然显示相应的更新成功,也就是没有在xml里没有校验,我仔细检查了,不知道原因
<body>
<s:fielderror/>
<form action="person/manage_update.action" method="post">
用户名:<input type="text" name="username"><br>
手机号:<input type="text" name="phone"><br>
<input type="submit" value="提交">
</form>
</body>改成这样