您的位置:首页 > 运维架构 > Apache

Apache CXF 与Spring MVC 结合时出现 No Service have found错误

2013-10-25 10:16 489 查看
最近技术总监要求给我们项目加一个webService,因为项目采用的是Spring架构的所以采用了Apache CXF作为webService的实现。

按照网上的教程按部就班的去写webService接口,参考文献如下http://www.cnblogs.com/hoojo/archive/2011/03/30/1999563.html



将Spring的容器初始化交给了DispatcherServlet,在applicationContext.xm配置了webService



运行部署后发现提示错误No Service have found。找了很长时间,终于在这篇博文中找到了原因http://kyfxbl.iteye.com/blog/1432920。原因是因为cxf的spring容器必须使用ContextLoadListener来启动,而spring MVC采用的DispatcherServlet来启动的,所以无法加载cxf的服务,于是采用
博文中的方法,分开加载,只将cxf的配置剥离出来。这时又出现问题,定义的bean无法自动注入,于是加入了compentSan,因为hibernate是配置在单独的文件,这里不把文件引入仍然会导致注入失败。将hibernate的配置文件引入后程序运行正常,webService也可以调用。

配置文件冗余,component-scan和hibernate的文件引入在两个文件都会存在,不知道会不会引发其他的问题
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐