2009-04-07 17 views
1

私は単純なユーザー登録フォームを持っています。そこでは私はタグとして都市を入れています。ここでは、mysqlデータベースから都市マスタテーブルから来るボックス値をドロップダウンします。struts2 <s:select...>タグ

しかし、私は全ユーザ登録値を保存すると、現在選択されている都市値を取得できません。誰も私を助けることができる...?私のユーザ登録フォームが含まれています

<s:form action="UserAction" > 
     <s:textfield name="name" label="User Name" /> 
     <s:textfield name="age" label="Age" /> 

     <s:radio name="sex" label="Sex" list="{'M','F'}" /> 

     <s:select list="cities" key="cities.name" listValue="name"> 
     </s:select> 

     <s:submit /> 
    </s:form> 

答えて

1

は最後に次のコードを書いた後、解決策を得ました。

+0

実際には、私はリクエストまたはセッションオブジェクトを使用していないので、getParamter()またはgetAttribute()関数は使用されていません。 – Nirmal

+0

かもしれませんが、実際にはそれらはすべてパラメータとして要求コンテキストにあります。 Strutsはそれをあなたから隠します。 –

1

は、あなたのケースで、あなたの豆を持っているものをあなたのリストの正確な名前を付けます。今すぐ動作するはずです。

  <s:select list="cities" name="city"> 
      <s:iterator value="cities"> 
      </s:iterator> 
     </s:select> 

そしてDAOを通じて挿入時に、それが自動的に豆からすべての値を取得します:

+0

しかし、私はUserAction.action Javaページにこのページを渡してきました。では、UserActionはサーブレットとして機能することができますか?今、私のUserActionは単純なJavaクラスです。 UserActionにHttpRequestオブジェクトは作成されません。 – Nirmal

+0

名前や年齢など、他のフィールドはどうやって取得していますか? –

+0

ああ...そのすべてが自動的にそこに行く。申し訳ありませんが投稿を編集しました。チェックしてください。 –

0

アクションクラスには、おそらくselectタグに基づいた属性があります。この値を設定すると、メソッドシグネチャの上に注釈を追加します。以下のような

何か:

@RequiredStringValidator(type = ValidatorType.SIMPLE, message = "Please select a value", fieldName = "select") 

これはあなたを整理する必要があります。これはstruts.xmlファイル内でも同様の方法で行うことができます。

乾杯 ネイサン