検索ページにboolean
. 必須ではないため、スキップしたい場合があるため、チェックボックスを使用できません。
JSP
<s:select list = '#{ "":"Make your choice...", true:"FOO", false:"BAR" }'
name = "myBooleanCriterion" />
アクション
private Boolean myBooleanCriterion;
/* Getter and Setter */
boolean
デフォルトはであることがわかっていますがfalse
、Boolean
デフォルトnull
は であり、最初にページがレンダリングされるときは問題ありません ( 「選択してください」が表示されます)。
ただし、POST の後、値として検出された場合でも、Struts はBoolean
プロパティをインスタンス化します (デフォルトで) 。そのため、JSP に戻ると、値は( "BAR" ) に事前選択されます。false
""
false
""
値が の場合にその変数のインスタンスを作成せず、元の状態のままにするように Struts に指示するにはどうすればよいnull
ですか? コンバーターを作成する必要がありますか、.properties
それともファイルで何かを指定する必要がありますか? (私は基本的にこの回答の例.2と同じコードを持っています)
(少しカスタムした) paramsPrepareParamsStack
Interceptor Stack を使用しています。
ばかげたことを見逃しているような気がします。