一尘不染

JSF2.0-使用Primefaces 3.0处理错误的Ajax调用

ajax

commandButton我的.xhtml页面中有一个:

<p:commandButton action="#{someone.doSomething()}"
                ajax="true"
                onerror="errorDialog.show();">
</p:commandButton>

它只是在进行Ajax调用。如何在Ajax调用过程中检测到(客户端/浏览器的)互联网连接问题,超时,会话超时,服务器端异常,崩溃等情况,以便向用户显示有用的消息?

是否处理所有这些onerror属性p:ajax?如果没有,那又如何?:)默认超时时间是多少?

任何帮助表示赞赏,谢谢。


阅读 164

收藏
2020-07-26

共1个答案

一尘不染

onerror调用此函数:
onerror(xhr,status,exception)-当ajax请求失败时要处理的Javascript回调。接受三个参数,xmlhttprequest,状态字符串和引发的异常(如果有)。
此信息来自文档。xhr-实际上是一个请求。因此可以找到请求状态和许多其他信息。

<p:commandButton action="#{someone.doSomething()}"
            ajax="true"
            onerror="console.debug(xhr)">
</p:commandButton>

在chrome或firebug中尝试此代码。它将显示xhr对象

查看http://primefaces.googlecode.com/files/primefaces_users_guide_3_0.pdf
7.2节Ajax API

2020-07-26