26.3. Spring Bean を Seam コンポーネントにする
<seam:component/> 名前空間ハンドラを使用すると、 あらゆる Spring Bean を Seam コンポーネントに変換することができます。 Seam コンポーネントにしたい Bean の宣言に <seam:component/> タグを追加するだけです。
<bean id="someSpringBean" class="SomeSpringBeanClass" scope="prototype"> <seam:component/> </bean>
<bean id="someSpringBean" class="SomeSpringBeanClass" scope="prototype">
<seam:component/>
</bean>
デフォルトでは、
<seam:component/> は Bean 定義で与えられるクラスと名前を付けてステートレスな Seam コンポーネントを作成します。 ときおり、 FactoryBean が使用される場合など、 Spring Bean のクラス が Bean 定義に表示されるクラスとは異なることがあります。 このような場合は class を明示的に指定してください。 また、 名前付けに競合の可能性がある場合は Seam コンポーネント名も明示的に指定してください。
Spring Bean を特定の Seam スコープ内で管理したい場合は
<seam:component/> の scope 属性を使用します。 指定される Seam スコープが STATELESS ではない場合、 Spring Bean を prototype にスコープする必要があります。既存の Spring Bean は通常基本的にステートレスな特徴を持っているので、 この属性は通常は不要です。