繁体   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