在RichFaces中中断ajax请求的问题

时间:2010-08-23 14:20:46

标签: jsf seam richfaces

我在项目中使用seam和RichFaces。如果用户执行离开页面的操作(即点击s:链接),而a4j ajax请求仍处于活动状态,则出现警告并显示错误599(请求错误,状态:599网络错误)。

我只能在<a4j:log>输出中找到错误日志:

  

debug [17:56:32,419]:新的AJAX请求!形式:aforma
  debug [17:56:32,420]:启动XmlHttpRequest
  debug [17:56:32,421]:请求状态:1
  debug [17:56:32,428]:QueryString:AJAXREQUEST = _viewRoot&amp; aforma%3Aj_id62%3Aname =&amp; aforma%3Aj_id74%3Aj_id82 =&amp; aforma%3AproductFileUploadLink%3Afile =&amp; aforma%3Aj_id125 = 20&amp; aforma%3AconfirmationPanelOpenedState =&amp; ; aforma%3Aj_id177 = CONFIRM1&安培; aforma = aforma&安培;自动滚动=安培; javax.faces.ViewState = j_id4&安培; aforma%3Aj_id86%3AcontentType = 0&安培; ajaxSingle = aforma%3Aj_id86%3AcontentType&安培; aforma%3Aj_id86%3Aj_id95 = aforma%3Aj_id86%3Aj_id95&安培;
  debug [17:56:40,338]:请求状态:4
  debug [17:56:40,338]:请求以状态4结束   错误[17:56:40,338]:请求错误,状态:0
   debug [17:56:43,551]:没有解析的XML文档作为回复
  debug [17:56:43,551]:处理更新完成,没有完整的函数来调用

避免此类错误的更好方法是什么?

1 个答案:

答案 0 :(得分:0)

嗯...在JSF2中,您可以添加自己的errorHandler。在Javascript中:

var handleError = function(data) {
  //handle error here
};
jsf.ajax.addOnError(handleError);

RichFaces可能有类似内容。