2012-01-23 5 views
1

JaxWS-Spring을 사용하여 웹 서비스를 구현했습니다. 받은 XML을 기록하고 싶습니다. 여러 가지 시도를했는데, 그 중 적절한 카테고리를 log4j.properties 파일에 추가하고 인터셉터를 사용했습니다. 그러나 나는 항상 하나의 이유 또는 다른 이유로 실패했다 (로깅은 무시되는 듯하다 - 나의 애플리케이션 컨텍스트에 인터셉터를 추가하는 것은 다른 이슈를 제공한다).Spring-WS를 사용한 서버 측 로깅

PS : 내 프로젝트에서

다음 조각 내가 사용하고 봄 2.5.6

web.xml을

<servlet> 
      <servlet-name>jaxws-servlet</servlet-name> 
      <servlet-class>com.sun.xml.ws.transport.http.servlet.WSSpringServlet</servlet-class> 
      <load-on-startup>1</load-on-startup> 
     </servlet> 


    <!-- Mapping to redirect all requests from 'FaxWebService' to jaxws-servlet. --> 
     <servlet-mapping> 
      <servlet-name>jaxws-servlet</servlet-name> 
      <url-pattern>/FaxWebService</url-pattern> 
     </servlet-mapping> 

applicationContext.xml

<!-- Bind the URL FaxWebService to our bean FaxWebService. --> 
    <wss:binding url="/FaxWebService"> 
     <wss:service> 
      <ws:service bean="#faxWebService"/> 
     </wss:service> 
    </wss:binding> 

<!-- Bean responsible of taking care of the webservice. --> 
    <bean id="faxWebService" class="com.connexo.icubeplus3.dispatcher.webservices.FaxWebService" 
      scope="singleton"> 
     <property name="dummyMode" value="${fax.dummy.mode}"/> 
    </bean> 
+0

log4j.properties의 내용은 무엇입니까? – rodrigoap

+0

나는 다양한 것들을 추가하려고 시도했다. log4j.logger.com.sun.xml.ws.transport.http.servlet = TRACE log4j.logger.org.springframework.ws.server = TRACE – Kros

답변

1

저는 이것이 Spring WS와 솔직하게 관련이 있는지 의심 스럽습니다.

들어오는 메시지를 Spring WS에서 로깅하려면 org.springframework.ws.client.MessageTracing.sent 및 org.springframework.ws.client.MessageTracing.received가 TRACE에 대한 로깅 수준을 높이고 싶습니다. 예를 들어, log4j 구성에서 :

<logger name="org.springframework.ws.client.MessageTracing.sent"> 
    <level value="TRACE" /> 
    <appender-ref ref="stdout" /> 
</logger> 
<logger name="org.springframework.ws.client.MessageTracing.received"> 
    <level value="TRACE" /> 
    <appender-ref ref="stdout" /> 
</logger>