我在我的 cxf.xml 文件中创建了一个 cxf webservice 我有以下标签。豆 id="videoStatsTable" 类="com.company.auth.dataobjects.VideoStatsTable"
据我了解,Spring 应该为我创建这个对象。问题是我不确定如何访问它。好像我需要 servletContext 但因为我不在 WS 中的 servlet 中,所以我不确定该怎么做?
W
Spring 有一种简化的方式来声明 Web 服务(使用 cxf)。
在你applicationContext.xml
添加xmlns:jaxws="http://cxf.apache.org/jaxws"
到你的根标签(<beans>
)和
http://cxf.apache.org/core
http://cxf.apache.org/schemas/core.xsd
http://cxf.apache.org/jaxws
http://cxf.apache.org/schemas/jaxws.xsd
给你的schemaLocation
然后加:
<!-- Loading CXF modules -->
<import resource="classpath:META-INF/cxf/cxf.xml" />
<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
最后声明您的 WebService 实现:
<jaxws:endpoint id="MyWebService" implementor="#MyWebServiceImpl"
address="/myWebServiceAddress" />
#MyWebServiceImpl
你的 bean 的 ID在哪里。您可以自由地将任何其他 spring 依赖项注入该 bean。
然后可以通过http://yourhost/cxfuri/myWebServiceAddress
(其中 cxfuri 是您的 CXF Servlet 的映射)访问 Web 服务