我正在使用 CXF 从 wsdl 生成 Web 服务。生成的 web 服务有注释 @WebService 我如何从 web 服务中获取对 spring bean 的引用?我所有的 spring bean 都用 @Service 进行了注释,我可以在我的 web 应用程序中访问它们。我如何也从我的 Web 服务访问它们?
我尝试了以下方法:
public class TestWSImpl implements TestWSSoap{
@Resource
public WebServiceContext wsContext;
@Override
public String getTest() {
ServletContext servletContext= (ServletContext) wsContext.getMessageContext().get(MessageContext.SERVLET_CONTEXT);
ApplicationContext context = WebApplicationContextUtils.getWebApplicationContext(servletContext);
return "Test";
}
}
但是 getWebApplicationContext 方法返回 null
当我将 getWebApplicationContext 替换为 getRequiredWebApplicationContext 时,我收到一条错误消息:未找到 WebApplicationContext:未注册 ContextLoaderListener?
有人有想法吗?
谢谢阿隆