1

こんにちは、これが私の問題です

selectjspにタグがあります

  <select list="#{'1':cat,'2':'dog','3':Monkey}" name="animalId" />

私のアクションクラスでは、modelDriven以下のようなインターセプターを使用しています

 public class ActionClass extends AcionSuport implements ModelDriven<BeanClass>
  {

     BeanClass modelName = new BeanClass();
     public BeanClass getModel()
     {

        return modelName;
        }
     }

これが私のBeanクラスです

   public class BeanClass
  {
    private Integer animalId;
       //There is getters and setters for animalId;

       }

私の問題は何ですか..アクションクラスでドロップダウンボックスのデータを取得したいとき、それは私にnull価値を与えます。

Ofcourse I am using `modelDriven` interceptor in my `struts.xml`

しかし、私がタイプに変換animalIdすると、正常に機能します。StringBeanClass

ドキュメントによると..型キャストは自動的に行う必要があります...しかし、コンソールでもエラーが発生しません...

誰か助けてください..

4

1 に答える 1

0

モデルのフィールド タイプは、ドロップダウンのキー タイプと、値属性のオプションを事前に選択する場合の値タイプに対応している必要があります。キーと値が同じタイプのオブジェクトを持つ場合、互いに比較できます。タイプ string または char のキーと対応するタイプの値がある場合Integer、OGNL はキーと同じタイプのプロパティを取得/設定しようとします。あなたの場合、文字列/文字キータイプの OGNL を使用してマップをインスタンス化します。そのため、プロパティが設定されておらず、プロパティ タイプが の場合は設定されていますStringIntegerキーとString値を作成する方法でドロップダウンを変更できます。

<select list="#{1:'cat',2:'dog',3:'Monkey'}" name="animalId" /> 
于 2014-06-14T16:36:24.520 に答える