1

Spring セキュリティで JSF を使用しています。私はそれを実装します。
私のコード:

@Named("userDetailsManagerImpl")
@Scope("application")
public class UserDetailBusinessImpl implements UserDetailsService {
    @Inject
    private MenuBackingBean menu;
}

すべてが良いようです。ただし、MenuBackingBean はアプリケーション スコープであると定義する必要があります。セッションスコープのみが必要です。そのため、スコープをセッションに変更しましたが、以下のエラーが発生
しました。シングルトンから参照する場合は、この Bean のスコープ付きプロキシを定義することを検討してください
。このエラーは、デフォルト スコープのスプリング セキュリティ セット アプリケーションが原因であると考えられます。
Google で検索しましたが、この問題に対する答えがありません (適切なキーワード検索がない可能性があります)。解決するのを手伝ってください、ありがとう、
私が使用した詳細情報:

  • JSF2.0
  • 春のセキュリティ 3.1.2
  • JSR 330 から名前を付けて注入する
  • springframework パッケージのスコープ アノテーション
4

1 に答える 1

1

このコードがどこかにあると思います:

@Inject
private YourSessionBean yourSessionBean;

// later in some method
this.yourSessionBean.doSomething();

これらすべてのケースで javax.inject.Provider を使用してみてください。

@Inject
private Provider<YourSessionBean> yourSessionBeanProvider;

// later in some method
this.yourSessionBeanProvider.get().doSomething();
于 2012-12-13T11:05:30.717 に答える