2010-11-30 10 views
0

私は春に新しくなりました。この質問は私にはしばらく迷惑をかけています。どんな助けもありがとう。リスト内に複数の実装が渡されました

ゲッターメソッドを呼び出すインターフェースがあります。

interface MessageHandler{ 

    public List GetMessageCheckerList(); 

} 

複数の実装を持つMessageCheckerという別のインタフェースがあります。 MessageChecker1、TestCheckerなどと言ってください(今は2と仮定してください)

これを構成XMLファイルでどのように定義すればいいですか?

私は実際にここで、

を作成した豆は、私が実際にメインを使用してプログラムを実行すると

をアドバイスしてくださいコード

<bean id="checkerList" class="java.util.ArrayList"> 
    <constructor-arg> 
     <list> 
      <ref bean="HL7Checker"/> 
     </list> 
    </constructor-arg> 
</bean> 


<bean id="HL7Checker" class="com.kahootz.messagereceiver.HL7CheckerImpl"> 
    <property name="messageExecutor" ref="Executor"/> 
</bean> 

の残りの部分で持っていますメソッド、私は豆の1つのハンドルを取得します、HL7CheckerはID = mesでBeanにリストで渡されるべきですsageHandler。しかし、私はリストを印刷します。それは空です。

スプリングを使用せずに、ゲッターとセッターメソッドのみを使用することなく、リストを「設定」してGetを使用して取得できます。

+0

「動作していません」とはどういう意味ですか?あなたが何を期待し、何を得たか教えてください。 –

+0

私は正しい道にいるのですか?アドバイスをお願いします – velapanur

+0

あなたが正しい道にいるかどうかはわかりません。 Beanの定義は大丈夫なので、Beanにアクセスするコードを表示する必要があります。そして、可能な限り完全なコードを作成してください。ベストはコンパイルできるプログラムです。 –

答えて

2
  1. ほとんどすべての名前がJava命名規則に準拠していません。そうすれば他の人があなたのコードを理解することが難しくなります。
  2. <ref>タグは、オブジェクトの名前ではなく、オブジェクトの名前()を想定しています。です。したがって、参照する前に<bean id="testChecker" class="com.test.TestChecker" />を定義する必要があります。
  3. パッケージ名com.Testは使用しないでください。まず、小文字のみを含める必要があります。第二に、あなたはその名前の所有者でなければなりません。
関連する問題