問題タブ [struts2-json-plugin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
struts2 - Struts2 Junit4 テストは、すべてのアクション実行で JSON 応答を蓄積します
次のようないくつかの Junit4 テストを作成しました。
どちらのアクションも JSON の結果を返し、executeAction
javadoc は次のように述べています。
JSON の結果を処理できないように見えるため、2 番目のアクションの実行では、次のように累積された結果が表示されます。result_for_second_action= result1 concatenate result2
executeAction()
以前のすべての実行からの JSON 応答を連結するのではなく、実際の JSON 応答を返すソリューションはありますか。
java - struts2-json プラグインを使用してフィールドの宣言順に JSON を生成する方法
struts2 json プラグインを使用すると、上記の Bean 用に生成される json は辞書順になっています
この [参照] は、JDK 6以降は宣言順にサポートされていると述べていますが、JSON 応答では、フィールドが辞書順で配置されていることがわかります。
生成された JSON で宣言順序を達成する方法はありますか?
jsp - Struts2-JSON プラグインは動作していますか?
Action
Struts2 JSON プラグインはクラス全体を JSON 形式にroot
param
変換することを知っていますparam
。
アクション クラスの 5 つのメンバーのうち、2 つまたは 3 つのメンバーだけを JSON に変換したい場合はどうすればよいですか? これは可能ですか?
java - Struts 2 JSON プラグインとワイルドカードの問題
私struts.xml
の慣例では、次のような特定のアクションクラスのアクションを呼び出すために従います:
struts.xml
:
ワイルドカードを使用してメソッド名を取得し、それConfigureTspThresholdAction
がクラス名です。
struts2-json-plugin
データをJSONに変換するために使用しています。ここで、いくつかのアクションで、Struts2 JSON プラグインを使用して JSON データを返したいと考えています。
したがって、次のようなアクションには extendsjson-default
と result-typeを使用する必要があります。json
したがって、同じ result-type を持つ異なる exclude-properties json
。
これらの JSON の結果の型を従う規則に適合させる方法は?
最後の 2 つのアクションは結果の型が同じであるため競合しjson
ますか?
java - Ajax エラー struts2?
私はアクションクラスに持っています:
私は AJAX 呼び出しを行っており、Struts2-Json-plugintspNameIdMap
を使用して JSON 形式を取得しています。
JS: AJAX の一部:
私のstruts.xml
:
addActionError
Ajax エラー関数にメッセージが必要です。また、JSPに表示したいと思います。どうすればこれを入手できますか?
Ps: この ActionError メッセージをプロパティ ファイルに含める必要がありますか? 初めて使用しています。ヘルプ
編集: @Prabhakar の回答に従っていると、エラー メッセージが表示されましたsuccess
が、AJAX 呼び出しで返されました。
もう 1 つの問題は、これを JSP に入れると、actionerror
が表示されないことです。
Jsp:
java - includeProperties が機能しない?
struts.xml:
アクション クラス:
アクションへの AJAX 呼び出しを行います。Firebug で JSON 応答をチェックインすると、次のようになります{}
。ただし、それを行う<param name="root">tspNameIdMap</param>
と機能しますが、機能しませんincludeProperties
。
以前は機能していましたが、いくつかのコード変更を行い(コードの上記の部分とは関係ありません)、機能しなくなりました。コードの変更にModelDriven
は、POJO の実装が含まれていました。
なぜ機能しないのですか?何か助けはありますか?
java - camelCase フィールドに struts2 json プラグインを使用すると、json 生成が正しくない
リクエストに が含まれている場合iDisplayLength
、それは完全に設定されており、動作中の値を確認できます。しかし、応答が返されると (json-response)、返されます
IDisplayLength
それ以外のiDisplayLength
私にはバグのようです。私はそれを間違っていますか?それらのゲッターとセッターは間違っていますか?
私のstruts.xmlは次のようになります:
アップデート
https://github.com/apache/struts2/blob/STRUTS_2_3_15_X/plugins/json/src/main/java/org/apache/struts2/json/JSONWriter.javaでプラグインのソース コードを確認しました。
フィールドの名前を把握するために使用するメソッドを複製した後:
IoAction
のようなゲッター/セッターがあります:
そして、上記のコードISortCol_0
は間違っているフィールド名を出力します(私見)、返されるべきiSortCol_0
でした Is it a bug in the Java Reflection API ?
java - 例外をスローせずに Struts2 JSON プラグインを使用して送信される JSON を検証する方法
アクションに変数がありDouble
、リクエスト本文で送信された値が次のようなものであるとします。
そして次のinterceptorStack
ようになります:
次に、アクションは をスローします。これは、プラグインのソース コードhereNumberFormatException
によると問題ありません。
しかし、この例外はプラグインで処理されないため、例外をスローするアクションから戻り、global-exception-handler
.
クエリ文字列を使用して同じリクエストが送信された場合?dblField=
、アクションは を返しますINPUT
。
では、json-plugin を同じように動作させて、をスローして起動するのではなく、INPUT
適切に返して設定するにはどうすればよいですか?fieldErrors
NumberFormatException
globalExceptionHandler
struts2 - Struts2、型変換および json プラグイン (struts2-json-plugin-2.3.14.2)
Excel スプレッドシートをシミュレートする Web アプリケーションを作成しました。
スペインの数値形式を使用したいと思います。例 2.345,67 で、アメリカ形式ではない: 2,345.67 サーバー側では、これらの値を BigDecimal 数値のリスト ( List<BigDecimal>
) に保存します。クライアントからサーバー、サーバーからクライアントに情報を送信するために、Json で Ajax を使用しています。
問題は、自動的にアメリカの形式 (1,234.56) のみが機能することです。タイプ変換を作成する必要があると思いますが、サーバーでパッケージ json-default を使用している場合、機能しないようです。
助けてください。