我想将使用CXFNonSpringServlet
实现的JAX-RS服务迁移到 Spring配置。
这些是我已经执行的操作:
我在web.xml中添加了以下内容:
<servlet>
<display-name>CXF Servlet</display-name>
<servlet-name>cxf</servlet-name>
<servlet-class>mypackage.CXFServletImpl</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>cxf</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
mypackage.CXFServletImpl扩展了CXFServlet
我添加了一个定义SpringBus的@Bean
:
@Bean
public SpringBus cxf() {
return new SpringBus();
}
我扩展CXFNonSpringServlet的旧类有:
loadBus(ServletConfig sc)方法的@Override
一种创建JAX-RS端点的方法
我必须使用Spring替换此配置。
我不能简单地添加一个org.apache.cxf.endpoint.Server的@Bean,因为这将在定义应用程序的Spring Context的@Configuration
类中定义。
我必须在应用程序启动结束时发布端点。
我该如何实现?