[jira] [Commented] (CXF-8365) LoggingInInterceptor could not be extended / logs only once

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

[jira] [Commented] (CXF-8365) LoggingInInterceptor could not be extended / logs only once

Colm O hEigeartaigh (Jira)

    [ https://issues.apache.org/jira/browse/CXF-8365?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17229450#comment-17229450 ]

Freeman Yue Fang commented on CXF-8365:

Hi [~cachescrubber],

No, we can't do it.

The expected default behaviour of LoggingInInterceptor is that it should print incoming message once and only once, no matter the incoming message is legal or not. Currently it works as expected.

If you have any other different requirements, you can always extends your own LoggingInInterceptor.

Best Regards

> LoggingInInterceptor could not be extended / logs only once
> -----------------------------------------------------------
>                 Key: CXF-8365
>                 URL: https://issues.apache.org/jira/browse/CXF-8365
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-WS Runtime, logging
>    Affects Versions: 3.4.0
>            Reporter: Lars Uffmann
>            Assignee: Freeman Yue Fang
>            Priority: Major
> Coming with CXF-8257 {{org.apache.cxf.ext.logging.LoggingInInterceptor}} will log a given message only once:
> {code:java}
> public void handleMessage(Message message) throws Fault {
>     if (isLoggingDisabledNow(message)) {
>         return;
>     } else {
>         //ensure only logging once for a certain message
>         //this can prevent message logging again when fault
>         //happen after PRE_INVOKE phase(rewind calls into LoggingInFaultInterceptor)
>         message.put(LIVE_LOGGING_PROP, Boolean.FALSE);
>     }
> {code}
> Filtering is done per message, not per Interceptor instance. We use a custom {{MyLoggingInInterceptor}} which subclasses the {{LoggingInInterceptor}}. (We Subclass in order to use different {{LogEventSender).}} So two distinct interceptor instances are applied to the Endpoint/Bus/Client but the message is logged only in the first invocation.

This message was sent by Atlassian Jira