首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Struts1 ActionForm中处理异常

在Struts1 ActionForm中处理异常
EN

Stack Overflow用户
提问于 2010-08-12 07:28:27
回答 1查看 1.1K关注 0票数 3

我正在开发一个使用Struts1.1的旧web应用程序。为了进行业务验证(涉及多个表单属性和调用后端服务的复杂验证),我编写了一个在ActionForm.validate方法上调用验证器链的ActionForm实现。

验证器链是使用commons链实现的。一切都很好,除了当ActionForm.validate中发生异常时,struts异常处理程序不会捕获它,而是在屏幕上显示堆栈跟踪。struts异常处理程序没有捕捉到这一点

有没有办法避免页面上的堆栈跟踪,并将异常传播到struts异常处理程序?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2011-07-21 23:12:31

也许最好是验证器根本不抛出异常。验证是根据minChars、maxChars、密码强度/验证、电子邮件语法正确性、isNumber等约束检查用户输入。如果验证器失败,它应该只返回false -永远不要抛出异常。请参阅http://struts.apache.org/1.2.4/userGuide/dev_validator.html上的示例

如果您的验证器调用后端函数...我想一定是出了什么问题。验证器应该只添加字段错误。

如果由于语法上的正确输入而产生错误(例如,登录时输入了错误的用户/密码),那么struts应用程序(您的操作)应该对此进行处理,并将操作错误返回给用户。这可以通过在抛出异常时重定向到错误页面(UserNotLoggedInException)来实现。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3463639

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档