6

@Autowire アノテーションを使用するには、アノテーションを使用するオブジェクトがスプリング コンテキストから取得されている必要があります。

JSF マネージド Bean は、Springs ではなく JSF の IOC によって作成されるため、内部で @Autowire を使用することはできません。faces-config.xml およびマネージド プロパティを使用する必要があります。

Spring Bean を管理プロパティとして使用できる EL リゾルバーを既にセットアップしています。さらに一歩進んで、何かを自動配線する必要があるたびに、faces-config.xml に移動する必要をなくしたいと考えています。これは可能ですか?

4

2 に答える 2

12

マネージド Bean に@Controller(または@Component)、および@Scope("request")(または) で注釈を付けて (まだsession追加し<context:component-scan>ていない場合) 追加するだけで、マネージド Bean は自動的に Spring Bean として検出されます。そして、あなたはすでに ELResolver を使用しているので、それだけです - 使用できるはずです@Autowired(または、Spring @Inject3.0 を使用している場合)。

于 2010-12-15T21:55:45.597 に答える
4

@ManagedProperty(#{'someBean'})を使用して、jsf Bean の他の Bean を自動配線できます

于 2013-11-11T10:57:17.023 に答える