我正在访问部署在使用axis2实现的其他远程计算机上的Web服务。 我使用cxf创建了一个webesrvice,它反过来调用我上面提到的其他wesbervice。 当我在tomcat上部署war文件时,我在控制台上获取所有soap消息,并且它被所有logs覆盖。我想禁用DEBUG语句。
有没有办法改变?我是否需要修改运行轴webservice的远程服务器(我的cxf webservice正在使用的那个)。 我得到如下调试语句。
pache.axis.message.MessageElement:trustLevelMap
2011-07-22 12:56:56 DeserializationContext [DEBUG] Exit: DeserializationContext:
:endElement()
2011-07-22 12:56:56 DeserializationContext [DEBUG] Enter: DeserializationContext
::endElement(, trustLevelMap)
2011-07-22 12:56:56 ProjectResourceBundle [DEBUG] org.apache.axis.i18n.resource:
:handleGetObject(popHandler00)
2011-07-22 12:56:56 DeserializationContext [DEBUG] Popping handler org.apache.ax
is.message.SOAPHandler@6961fdd9
2011-07-22 12:56:56 DeserializationContext [DEBUG] Popped element stack to org.a
pache.axis.message.MessageElement:navigation
2011-07-22 12:56:56 DeserializationContext [DEBUG] Exit: DeserializationContext:
:endElement()
除此之外,我想将我的cxf日志级别从调试更改为信息。请给我一些指示。
答案 0 :(得分:2)
找到log4j.properties
文件。
添加
log4j.logger.org.apache.axis=ERROR
对于log4j.xml
- 不知道语法?
参见:
http://ws.apache.org/axis/java/developers-guide.html#Logging/Tracing和http://ws.apache.org/axis/java/developers-guide.html#TurningOnDebugOutput
(我回答这个问题的时间比问的要晚得多,因为当我想知道同样的事情时我发现了这个问题)
答案 1 :(得分:0)
如果 CXF的记录器 log4j ,您可以在 log4j.xml 或 log4j.properties 中包含 log4j.xml 您的Web应用程序的类路径(例如在 WEB-INF / classes 中)并在该文件中配置您喜欢的日志记录。如果 CXF 默认使用其他Logger,我确定有办法强制它使用 log4j (我确信还有一种方法可以配置它正在使用的任何Logger ,但我只熟悉log4j)。