区分要在 Struts 2 中使用的成功数据和错误消息?

Posted

技术标签:

【中文标题】区分要在 Struts 2 中使用的成功数据和错误消息?【英文标题】:Differentiate between success data and error message to use in Struts 2? 【发布时间】:2014-01-18 03:05:05 【问题描述】:

我正在进行 AJAX 调用并使用 Struts2 JSON 插件。

当代码到达AJAX调用的success()时,不知道应该加载成功数据还是加载消息还是错误,如果在 AJAX 调用期间发生异常情况,我想将其显示给用户。

因为代码总是到达success(),直到 AJAX 请求本身失败。

我怎样才能做到这一点?

编辑:我想出了一个想法,那就是发送一个字符串来响应 Ajax 并检查字符串值(即)如果字符串设置为成功加载返回的另一个 JSON 参数,如果错误我加载error.jsp

【问题讨论】:

【参考方案1】:

如果您只使用 JSON 响应,那么您应该设置操作结果的状态代码。

如果您返回 json 类型的结果,那么您可以使用

<result name="error" type="json">
    <param name="statusCode">400</param>
</result> 

会达到error()Ajax功能。

如果您使用不同的响应,您可以将状态代码设置为响应对象

response.setStatus(400);

error() 上,您可以使用jqXHR 参数来检查jqXHR.status

【讨论】:

我曾尝试将状态码设置为 200 以表示成功,但如果 AJAX 请求成功,则 200 已经设置为状态码。你能用一些代码解释一下吗? 这个问题***.com/questions/20856712/…也有同样的参考。

以上是关于区分要在 Struts 2 中使用的成功数据和错误消息?的主要内容,如果未能解决你的问题,请参考以下文章

struts2 action在前台显示信息提示

ssh整合之五struts和spring整合

Struts 2 下拉示例问题

在struts2中,发布成功,tomcat正常启动,但请求资源不存在,如何解决

JAVA中Action层, Service层 ,modle层 和 Dao层的功能区分

如何在jsp页面中使用struts2标签