我正在使用Spring
和CXF
创建一个soap webservice客户端。启用日志记录+ gzip压缩的首选方法是什么?是应该使用注释还是以编程方式直接添加功能?
@Component
@WebService
@GZIP
@Logging(pretty = true)
public class SoapService {
}
或
EndpointImpl end = new EndpointImpl(new SpringBus(), new SoapService());
LoggingFeature feature = new LoggingFeature();
feature.setPrettyLogging(true);
end.getFeatures().add(feature);
end.getFeatures().add(new GZIPFeature());
end.publish("/SoapService");
重要吗?你更喜欢什么?
答案 0 :(得分:1)
就记录而言,the Apache CXF documentation contains following:
通过使用可以执行的单独输入/输出拦截器来激活记录 根据需要附加到客户端和/或服务。这些 拦截器可以通过编程方式指定(通过Java代码 和/或注释)或通过使用配置文件。
配置文件可能是最好的。他们提供两个好处 程序化配置:
- 可以更改日志记录要求,而无需重新编译 代码
- 不需要在代码中添加特定于Apache CXF的API, 这有助于它与其他符合JAX-WS标准的Web保持互操作 服务栈
醇>
因此看起来启用日志记录的首选方法是使用配置(= Spring配置文件),这应该可以确定您正在计划使用CFX + Spring。我认为同样的推理适用于启用GZIP压缩。