SpringBeanAutowiringSupport

SpringBeanAutowiringSupport

这是在Web应用程序的上下文中。我的Impl类具有JAX-WS注释,而@Autowired注释不起作用。
检索自动装配对象时出现空指针异常。

找到解决方案,两者都可以工作:


扩展SpringBeanAutowiringSupport并保持@Autowired批注完整。
使用WebApplicationContextUtils来获取WebapplicationContext加载豆的位置。此上下文中的getBean()给了我所需的bean。


现在,SpringBeanAutowiringSupport类的文档在NOTE中说
“如果有明确的访问ServletContext的方法,则首选使用此类而不是使用此类。WebApplicationContextUtils类允许轻松访问基于ServletContext的Spring根Web应用程序上下文。”

这是什么意思?在我的Web应用程序中,我没有使用任何servlet。我的Web应用程序也不是唯一的JAX-WS应用程序。这是一个同时具有SOAP/REST webservicesEJBs的Web应用程序。

首选哪种方法,为什么?请帮忙。

最佳答案

Spring docs中提到了扩展SpringBeanAutoWiringSupport作为首选方法。因为您不必从Web上下文显式访问Bean,所以此方法不是更好吗?

http://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/remoting.html#remoting-web-services

10-02 22:36