在Spring-Boot应用程序中,我注册了这样的Apache-CXF SOAP服务:
@Bean(destroyMethod = "destroy")
org.apache.cxf.endpoint.Server server(MyService myService) {
JaxWsServerFactoryBean svrFactory = new JaxWsServerFactoryBean();
svrFactory.setServiceClass(MyService.class);
svrFactory.setAddress("http://0.0.0.0:4711/MyService");
svrFactory.setServiceBean(myService);
svrFactory.getInInterceptors().add(new LoggingInInterceptor());
svrFactory.getOutInterceptors().add(new LoggingOutInterceptor());
return svrFactory.create();
}
可能在我的spring配置的其他位置发生,上下文无法成功初始化(应用程序启动失败)并启动应用程序关闭。
不幸的是,已经创建的服务器bean保持活动状态并阻止应用程序完全关闭。我认为destroyMethod = "destroy"
可以解决问题,但这只会破坏webapp / SOAP端点(在HTTP ERROR 404中重新进行),但嵌入式jetty仍在运行。
我是否有机会以某种方式配置Spring Context,以防止嵌入式Jetty在Spring Context初始化失败时保持活动状态?