簡體   English   中英

JAAS如何加載實現LoginModule的類?

[英]How does JAAS load a class implementing LoginModule?

這是通過反射或ServiceLoader完成的嗎? 我問,因為我有一個應該使用Spring的自定義LoginModule,但是盡管具有@Autowired ,但相應的bean卻沒有正確填充(使用在上下文中定義的bean,它顯然在類路徑中)。 這使我認為LoginModule實現類是使用反射加載的,從而完全規避了Spring。 是這樣嗎 如果可以,我還能以某種方式使用Spring嗎?

要回答我自己的問題:是的,這是使用反射完成的,它有效地繞過Spring,並為您提供了一個實例化的對象,該對象沒有任何@Autowired

但是,您可以在LoginModuleinitialize()方法中手動初始化bean。 LoginModule類應實現org.springframework.context.ApplicationContextAware並且您必須具有private static ApplicationContext context 這樣,為您注入了context ,您可以從那里加載bean。

遠非最佳,但似乎可以解決問題。 如果有人有更好的解決方案,請分享,因為我很高興聽到!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM