No bean named 'cxf' is defined 解决Struts和CXF启动tomcat报错

来源:互联网 发布:变色镜片 知乎 编辑:程序博客网 时间:2024/06/08 07:41

当struts2和cxf同时使用时,启动tomcat会报出错误:

org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'cxf' is defined


造成这种情况的原因是struts2的过滤器:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter

配置拦截了CXF的请求,总结了两种解决办法:

一:将struts2的拦截改为.action(该方法需要Struts2的访问路径都要以.action结束)



二.自定义一个struts2的拦截器,继承struts2的拦截器,在拦截器中对于cxf的请求放行

自定义过滤器


然后,将自定义的过滤器在web.xml中配置


这样就可以解决两个拦截器冲突的问题

阅读全文
1 0