我通过将操作扩展到 ActionSupport 来使用 Struts 验证。
当我尝试在 UI 上放置特殊字符时,默认 actionErrors 在集合中添加,例如在输入中检测到非法字符,请删除它们并重试。
然后我需要删除 UI 上出现的默认验证。我不知道如何处理它。
我的代码是这样的:
void validate(){
if (locationBean.getReasonTypeId() == 0)
{
addActionError("Error in reason");
}
if (ValidationHelper.checkRequiredField(locationBean.getName()))
{
addActionError("Error in Location name");
}
}
我的验证动作类是这样的:
public class ValidationErrorJSONAction extends ActionSupport
{
private JSONObject jsonObject;
@SuppressWarnings("unchecked")
public String execute() throws Exception
{
jsonObject = new JSONObject();
jsonObject.put("actionErrors", new JSONArray(getActionErrors()));
jsonObject.put("fieldErrors",new JSONObject(getFieldErrors()));
TokenHelperJSON.appendToken(jsonObject);
return SUCCESS;
}
希望它能帮助您理解问题。