3

Ajax 操作用に Struts2-jQuery フレームワークを使用する Struts2 アプリケーションがあります。以下のように 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"
/>

このアクションの結果タイプ ERROR を次のように定義して、成功した 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>

問題: 現在、このアプローチは"onErrorTopics"..etc などの他のすべての Struts2-jQuery タグで をsj:selectが、..etc では同じものをトリガーしていないようですsj:autocompleter。誰もこの問題に直面しましたか? もしそうなら、オートコンプリーターからの ajax リクエスト中に発生する例外を処理する最良の方法は何ですか?

4

1 に答える 1

1

返されたjsonの有効性を自分で確認するまで、ビューで例外処理を行うことはできないと思います。

ところで、オートコンプリータは結果を返しませんが、json オブジェクトを返します。

アクションによって返された json は、javascript または jquery で検証できます。

于 2013-09-24T18:04:09.900 に答える