当前位置 : 主页 > 网页制作 > Nodejs >

SSH集成CXF项目启动时出现告警日志

来源:互联网 收集:自由互联 发布时间:2021-06-24
spring 4.1.3.RELEASE + cxf 2.5.0框架,在项目启动时出现一大堆告警日志,虽然不影响项目正常运行,但看着很刺眼,所以要想办法清除掉。 告警1:Import of META-INF/cxf/cxf-extension-soap.xml has bee

spring 4.1.3.RELEASE + cxf 2.5.0框架,在项目启动时出现一大堆告警日志,虽然不影响项目正常运行,但看着很刺眼,所以要想办法清除掉。

告警1:Import of META-INF/cxf/cxf-extension-soap.xml has been deprecated and is unnecessary
原因:之前老版本的配置是要求导入cxf-extension-soap.xml文件,如下所示:

<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" />

新版本已经不作此要求,所以会出现这样的警告。

解决办法:找到spring中cxf相关的配置文件applicationContext.xml,将import部分的cxf-extension-soap.xml这一行删除掉。

告警2:org.apache.cxf.endpoint.ServiceImpl initDestination;
Setting the server’s publish address to be /orderService;
org.apache.cxf.common.injection.ResourceInjector - visitField;
fail to resolve resource com.xxx.OrderServiceImpl/xxx;
其中OrderServiceImpl为实现类,com.xxx.OrderServiceImpl/xxx为该实现注入的成员变量。
endpoint配置信息如下:

<jaxws:endpoint id = "OrderService" address="/orderService" implementor="#orderServiceImpl" />
      <bean id = "orderServiceImpl" class="com.xxx.OrderService">

原因:endpoint的实现类注入的依赖服务类,没有按照指定的格式写,这样的日志有特别多,因为每个实现类都注入了许多依赖服务类,如 @Resource private AuthService authService; 这样写也没有问题,不用影响正常使用,但就是会有警告,原因是@Resource没有添加name属性,改成这样,警告就消失了,如下所示: @Resource(name=”authService”) private AuthService authService;

网友评论