0

私は1つの春のフォーム名UpdateStock.jspを持っています

<form:form........>
 <form:input path="compAmount"/>
 ............
</form:form>

私の意図は、データベースからのいくつかのデフォルト値によって上記のスプリングフォームテキストボックスを初期化することです。だから私はフォームテキストタグを持っています

   <form:input path="compAmount" value=${compamount}/>

ここで、$ {compamount}は、referenceData()メソッドから返される値の1つです。しかし、問題はvalue =${compamount}が無効であるということです。

だから私はそれを残して、次のように次のことをします:

つまり、以下のようにreference_Data()メソッドでObjectコマンドオブジェクトを初期化します。しかし、それは機能していません。

protected Map reference_Data(HttpServletRequest request, Object command,Errors errors, int page) throws Exception {

   UpdateStockBean bean=new UpdateStockBean();//which is correspond to UpdateStock.jsp page

   bean.setCompAmount(300);//this do not change the value of corresponding field
   command=new Object();
   command=(Object)bean;

}

解決策を提案できますか?

4

2 に答える 2

0

フォームの一部のテキスト フィールドにデフォルト値を設定したいようです。使用している場合はSimpleFormController、メソッドをオーバーライドしてprotected Object formBackingObject(HttpServletRequest request)、フォームのフィールドにデフォルトのデータをフォームに入力するだけです。

protected Map referenceData(HttpServletRequest request)この目的でメソッドを使用しないでください。referenceDataチェックボックスまたはラジオ ボタンのリスト データを提供するために使用されるためです。これは、mkyoung のこの素敵な記事でうまく説明されています。

を使用している場合AbstractWizardFormControllerでも、メソッドprotected Object formBackingObject(HttpServletRequest request)とがありprotected Map referenceData(HttpServletRequest request)ます。AbstractWizardFormControllerはAbstractFormControllerのサブクラスであり、最終的に上記のメソッドを保持するためです。これは、フォーム ベイク オブジェクトを使用したサンプル デモンストレーションです。AbstractWizardFormController

乾杯!

于 2013-02-24T16:20:28.057 に答える
0

Mapコレクション を使用している場合は、次のように試すことができます。

Map yourname = new HashMap(); 
yourname.put("compamount", bean.getCompAmount());

したがって、ここの ${compamount} は、reference_Data() メソッドから返される値の 1 つです。

私はあなたを助けることを願っています:)

于 2013-02-24T18:07:43.577 に答える