В Spring Integration, используя входящий шлюз, знаете ли вы, как сохранить каждый запрос SOAP WS для разделенных файлов?Spring Integration inbound-gateway Как сохранить запрос soap к файлу?
В настоящее время я застрял на:
<!-- inbound -->
<ws:inbound-gateway id="inbound-gateway" request-channel="SOAPRequestChannel" reply-channel="SOAPResponseChannel"/>
<int:channel id="SOAPRequestChannel">
<int:interceptors>
<int:wire-tap channel="SOAPRequestChannelForLog"/>
</int:interceptors>
</int:channel>
<int:channel id="SOAPResponseChannel" />
<int:channel id="SOAPRequestChannelForLog" />
<int:logging-channel-adapter id="logger" expression="payload" level="INFO" channel="SOAPRequestChannelForLog"/>
Но это только регистрировать все запросы в 1 файле.
ИЛИ Мне нужно написать еще один класс, например LogToFile, который имеет способ сохранить этот запрос в файле, заменить int: logging-channel-adapter на int: service-activator? Поддерживает ли Spring безотлагательное протоколирование каждого запроса SOAP? Я прочитал справочный документ, но не смог найти ничего.
ИЛИ есть лучший способ?^_^
С уважением,
Я узнал о поддержке Spring PayloadLoggingInterceptor & SoapEnvelopeLoggingInterceptor, прочитав книгу Spring Web Service 2 Поваренная книга сначала, затем проверьте ссылочный документ. Там есть^_^ –
Пожалуйста, сформируйте правильный ответ на вопрос и примите его. Это поможет другим людям найти решение, и вопрос исчезнет с моей панели инструментов. Или просто удалите его :-) –
Привет @Artem Bilan, на самом деле, это еще не решение, так как PayloadLoggingInterceptor использует log4j2 для регистрации полезной нагрузки. В настоящее время я не знаю, как настроить log4j2 для регистрации каждого запроса/ответа отдельно. Во всяком случае, я поставил временный ответ. –