복붙노트

[SPRING] 스프링 - SoapEnvelopeLoggingInterceptor를 표준 출력보다 형식적으로 데이터를 로그 파일에 적용하도록 조정할 수있는 방법은 무엇입니까?

SPRING

스프링 - SoapEnvelopeLoggingInterceptor를 표준 출력보다 형식적으로 데이터를 로그 파일에 적용하도록 조정할 수있는 방법은 무엇입니까?

Spring 웹 서비스 요청 / 응답에 대한 정식 감사를 수행하려고한다.

내 스프링 구성에서이 위치에 있습니다.

<ws:interceptors>   
   <bean class="org.springframework.ws.soap.server.endpoint.interceptor.SoapEnvelopeLoggingInterceptor"/>
</ws:interceptors>

이것은 문제가되지 않으며 JBoss 로그 파일에 요청과 응답을 기록합니다. 내가 원하는 것은 이것을 적응시키고 이러한 요청 / 응답을 좀 더 깔끔하게 기록 할 수 있고 어떻게 데이터를 확보 할 수 있는지, 그래서 DB의 감사 기록에 쓸 수 있습니다.

위의 내용을 어떻게 적용하여 콩이나 다른 것과 매핑하여 요청과 응답에있는 데이터를 얻을 수 있습니까?

해결법

  1. ==============================

    1.SoapEnvelopeLoggingInterceptor의 하위 클래스를 만들고 재정의 할 수 있어야합니다. 당신이 원하는 것을하기위한 logMessage (String). 예:

    SoapEnvelopeLoggingInterceptor의 하위 클래스를 만들고 재정의 할 수 있어야합니다. 당신이 원하는 것을하기위한 logMessage (String). 예:

    <ws:interceptors>   
       <bean class="org.mypackage.SysErrLoggingInterceptor"/>
    </ws:interceptors>
    
    
    package org.mypackage;
    
    public class SysErrLoggingInterceptor extends SoapEnvelopeLoggingInterceptor {
        @Override
            protected void logMessage(String message) {
            System.err.println(message); 
            /* Example, here you could be logging to DB or whatever you want */
        }
    
    }
    
  2. from https://stackoverflow.com/questions/14197918/spring-how-can-i-adapt-soapenvelopelogginginterceptor-to-log-the-data-more-for by cc-by-sa and MIT license