2014-01-29 4 views
0

log4j와 함께 weblogic 응용 프로그램 서버에서 cxf 프레임 워크에 대한 로깅을 활성화하려고합니다.log4j를 사용하는 CXF 요청 응답 로깅 :

도메인 홈에 cxf.xml을 추가하고 setdomainenv를 수정하여 cxf.xml 항목 -Dcxf.config.file.url = cxf.xml을 추가했습니다. webservice를 호출하기 전에 System.setProperty ("org.apache.cxf.Logger", "org.apache.cxf.common.logging.Log4jLogger")를 설정 중이며 http://cxf.apache.org/docs/configuration.html에 지정된 3 가지 유형의 구성을 모두 구성 해 보았습니다. . 그러나 아무것도 작동하는 것 같습니다.

org.apache.cxf.common.logging.Log4jLogger을 포함하는 org.apache.cxf.Logger 파일을 만들려고했습니다.

log4j.properties log4j.rootLogger = DEBUG, FILE log4j.logger.org.apache.cxf = DEBUG log4j.appender.FILE = org.apache.log4j.FileAppender log4j.appender.FILE.File = < 이 경우> /logFile.log log4j.appender.FILE.layout = org.apache.log4j.PatternLayout log4j.appender.FILE.layout.conversionPattern = % m % N

CXF version: 2.7.5

제안주십시오 요청 및 응답 모두 기록에 필요한 변경 xml?

답변

0

org.apache.cxf.Logger 파일이 META-INF/cxf에 있는지 확인하십시오. 당신의 전쟁을 검사하여 확실히하십시오. 또한

, 당신이 잭스 - WS에서 로거를 정의하고 있는지 확인, 잭스 - WS를 사용하여 서비스를 정의하는 가정 : inInterceptor와 잭스 - WS : outInterceptor

<jaxws:client id="..." serviceClass="..." address="..." > 
    <jaxws:outInterceptors> 
    <ref bean="logOut" /> 
    </jaxws:outInterceptors> 
    <jaxws:inInterceptors> 
    <ref bean="logIn"/> 
    </jaxws:inInterceptors> 
</jaxws:client> 

<bean class='org.apache.cxf.interceptor.LoggingInInterceptor' id='logIn'/> 

<bean class='org.apache.cxf.interceptor.LoggingOutInterceptor' id='logOut'/> 
+0

귀하의 제안을 주셔서 감사합니다하지만이 나에게 도움이되지 않습니다. 나는 org.apache.cxf.Logger 파일이 전쟁을 구축 한 후에 존재하는지 확인했습니다. 그러나 그 didnt 작업을 할 때 --Dcxf.config.file.url = cxf.xml (이 파일이로드되었는지 확인하는 방법)을 설정하여 도메인 홈으로 이동했습니다. 그리고 jaxws를 사용하지 않습니다. 나는 mvn에서 wsdl2java를 실행할 때 생성 된 Port 클래스에서 webservice 호출을 만든다. – Murali

관련 문제