Jquery Struts2结果类型http头500不会触发sj:autocompleter中的onErrorTopics

Jquery Struts2结果类型http头500不会触发sj:autocompleter中的onErrorTopics,jquery,error-handling,struts2,struts2-jquery,Jquery,Error Handling,Struts2,Struts2 Jquery,我们有一个Struts2应用程序,它使用Struts2 jQuery框架进行Ajax操作。在Struts2 jQuery中使用Autocompleter(sj:Autocompleter)标记时,它向Struts2 Action jsonlanguages发出ajax请求 <s:url var="remoteurl" action="jsonlanguages"/> <sj:autocompleter id="languages" href="%{remoteu

我们有一个Struts2应用程序,它使用Struts2 jQuery框架进行Ajax操作。在Struts2 jQuery中使用Autocompleter(sj:Autocompleter)标记时,它向Struts2 Action jsonlanguages发出ajax请求

<s:url var="remoteurl" action="jsonlanguages"/>
<sj:autocompleter
    id="languages"
    href="%{remoteurl}"
    delay="50"
    loadMinimumCount="2"
/>

我们为此操作定义了一个结果类型错误,如下所示,以触发一个内部服务器错误,而不是将其作为一个成功的ajax请求完成

<result name="ERROR" type="httpheader">
  <param name="status">500</param>
  <param name="headers.a">a custom header value</param>
  <param name="headers.b">another custom header value</param>
</result>

500
自定义标题值
另一个自定义标题值

问题:现在,这种方法在所有其他Struts2 jQuery标记(如
sj:select
等)中触发
“onErrorTopics”
,但在
sj:autocompleter
中似乎没有触发相同的问题。有人面对过这个问题吗?如果是这样的话,处理来自自动完成器的ajax请求期间发生的异常的最佳方法是什么?

我认为在您自己检查返回的json的有效性之前,不可能在视图中执行异常处理

顺便说一句,autocompleter只返回json对象,不返回任何结果

您可以在javascript或jquery中验证操作返回的json