我开发了一个使用Struts2 Jquery插件对用户进行身份验证的屏幕。它部分加载到目标div。如果成功,一切都很好,但如果失败,我不知道该怎么做。文档根本没有谈论它。
@Action(value = "/validate-login", className = "LoginAction", results = {
@Result(location = "startup-after-login.jsp", name = "success") })
public String execute() throws Exception {
super.addActionError("test");
throw new Exception();
//return SUCCESS;
}
身份验证失败时, service.validateUser
可能会抛出异常。不知道如何处理这些并在前端将其显示为错误。
还有一个链接谈论它但我无法使它成功运作。
strust 2 (jquery plugin) show action exceptions as ajax error
感谢您的帮助。
答案 0 :(得分:0)
好的,到目前为止还没有正确答案。经过大量时间的挣扎,我只是对struts2 jquery插件做了更多的研究,看来这个插件有很多问题然后解决方案。 这个问题的任何方法:您需要确保返回的http代码不等于200.这可以通过覆盖默认的Exception处理程序拦截器并将值设置为400以上来实现。我将其设置为400(坏请求)然后struts2 jquery插件识别它有错误,否则它总是认为它有成功响应,虽然实际上后端出现了错误。一旦引发错误,您就可以使用OnErrorTopics并相应地处理响应。