0

+Java と JSP で Struts2 フレームワークを使用しています。

すべての jsp ページには、ユーザーのロケール (英語、フランス語、オランダ語) を切り替えるための 3 つのボタンがあります。i18n メソッドを使用して、言語ボタンの 1 つをクリックする前と同じページにユーザーをリダイレクトします。これは正常に動作しますが、(タイプ リダイレクトの結果を伴う) アクションを使用しているため、ページが再度読み込まれます (明らかに、選択した言語を反映するようにテキストが更新されません)。

私の問題は次のとおりです。ユーザーが長いフォームに入力していて、途中で言語ボタンの1つをクリックして言語を切り替えることにした場合、ページがリロードされたため、フォーム全体がリセットされます。

私が必要としているのは、ユーザーがすでに入力したフォームのフィールドを保持するためのクリーンなソリューションです。そのため、入力ラベルは更新されますが (たとえば、"username:" からフランス語の "identifiant:" に変更されます)、ユーザーがそこに入力したテキストはそのまま残ります。ユーザーが入力したすべてのデータを非表示の入力に保存し、これを「ロケール変更アクション」のパラメーターとして渡すという手の込んだスキームを考えていました。ページがリロードされると、すべてのパラメータが取得され、再度入力されます。私のフォームの長さと複雑さを考えると、これは退屈な作業です。助言がありますか?

4

1 に答える 1