- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为我们的应用程序编写自定义 ActionErrors
消息,以针对特定情况显示特定错误。
public class ErrorForm extends ActionForm{
public ActionErrors validateForm(ActionMapping mapping, HttpServletRequest request){
errs.add(FORM_KEY_ACTION_TYPE, new ActionMessage(WebGlobals.CUSTOM_ERROR));
return errs;
}
}
不幸的是,我们代码的结构方式(我宁愿不尝试推销“让我们为一个小的改变重构四个类”),ErrorForm
是其他几个类的父类。并且对于除了我在代码片段中显示的原因之外,验证必须在 ErrorForm
类中完成。
当父类终止并将ActionErrors
返回给子类时,子类会添加自己的错误消息,如下所示。
public class ErrorThrowingForm extends ErrorForm {
public ActionErrors postValidate(ActionMapping mapping, HttpServletRequest request)
{
ActionErrors errs = super.validateForm(mapping, request);
if (errs.size() > 0)
errs.add(WebGlobals.GENERAL_ERROR_KEY, new ActionMessage(WebGlobals.PROP_FIELD_ERROR));
return errs;
}
}
尽管错误信息是从父类返回的,但是只显示子类的错误信息,永远看不到父类的错误信息。抛出验证错误的表单字段旁边会显示一个 !,但不会显示关联的 Custom_Error 消息。
我想返回自定义错误信息。而且我没有能力在 child 类(class)中添加该错误。
如何确定我的 ActionErrors
消息中有哪些错误,以便我可以检查我的自定义错误并返回它,而不是依赖于子类?
我已经尝试简单地删除整个“if” block 并直接返回从 validateForm
方法接收到的错误,但是当我这样做时,错误消息无法显示在页面,我不知道为什么。
最佳答案
按照您的说法,父表单应该是 ValidatorForm
的子表单,您应该更好地理解这一点。在父级的子窗体中,您应该添加 validate
方法来调用验证。那么在父实现中,最好在第一条语句中调用框架的super方法,然后可以将错误消息添加到框架返回的ActionErrors
中。希望你能理解这一点。
public class ErrorForm extends ValidatorForm{
public ActionErrors validateForm(ActionMapping mapping, HttpServletRequest request){
ActionErrors errs= super.validate(mapping, request);
errs.add(ActionErrors.GLOBAL_MESSAGE, new ActionMessage(WebGlobals.CUSTOM_ERROR));
return errs;
}
}
关于java - 如何检查特定错误的 ActionErrors?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29775465/
我正在为我们的应用程序编写自定义 ActionErrors 消息,以针对特定情况显示特定错误。 public class ErrorForm extends ActionForm{ public A
我想加载我的 Error.jsp在我的 ErrorDiv如果Action类返回错误。我正在进行 AJAX 调用。 JS: success: function(result){ if(re
这个问题在这里已经有了答案: 9年前关闭。 Possible Duplicate: Can I propagate struts2 ActionErrors between different act
我有一个具有多种表单的 JSP 作为对象的“编辑” View 。现在我想发送其中一张表单,但 validate 方法中出现错误,因为其中一个输入字段未填写。 当 bean 验证并发现错误时,Strut
是否可以在 JavaScript 中验证或查看 ActionErrors/ActionMessages?以便正确的 JavaScript 警报可以显示在屏幕上。 谢谢。 最佳答案 Javascript
该应用程序是在 Struts 1.2 上制作的。我有一个登录表单,所有与登录相关的验证都已正确显示。对于验证,我使用的是 Validator 框架。 当验证成功但用户认证失败时,我无法正确显示登录失败
我有以下 formbean: public class EmployeeForm extends org.apache.struts.action.ActionForm { private int e
Struts2 中操作类中的以下行等效于什么: if(actionError.get("myError").hasNext()){ .... } 最佳答案 ActionSupport 类中有一个方法
在 struts-config.xml 中: 在 PackageForm.java(它扩展了 ActionForm 类) @Override public A
我有一个表单 (form.jsp) 和一个连接的 FormAction ActionA。 ActionA 进行验证并存储 ActionErrors,form.jsp 将使用 打印它们。标签。所有这一
如果我有一个操作,其结果是重定向到另一个类中的另一个操作,是否有可能在结果操作中显示验证错误?例如。在下面的示例中,如果用户执行 actionA(没有与之关联的 View )并且出现错误,是否有任何方
我一直在使用 struts-errors 将消息从调度操作类传递到查看页面但我发现 struts-messages 是执行此操作的标准标签首先这两个类有什么区别其次如何使用 struts-errors
在我的 Struts 2 应用程序中,跟随标签生成 ul li span 标签,我必须避免它。怎么可能?我也用过theme="simple",不行。 最佳答案 使用迭代器标记迭代actionMes
我正在制作 JQuery Ajax 帖子,并希望将任何 actionmessages、actionerrors 和 fielderrors 添加到响应中的操作中( JSON 格式)。 我添加了这个结果
在我的 web 应用程序中,我想在 中发回一些文本 addActionError("User not logged in. Click Here to log in"); 问题是 html 文本显示为
我正在开发 struts1.2 应用程序。我创建了一个扩展 validatorform 的 formbean,然后重写方法 validate()。 然后当我运行流程时。它给我错误。 Aug 21, 2
我是一名优秀的程序员,十分优秀!