You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Przemysław Ołtarzewski (JIRA)" <ji...@apache.org> on 2013/04/16 15:43:16 UTC
[jira] [Created] (CXF-4963) Unable to set prettyLogging for class
extending LoggingOutInterceptor
Przemysław Ołtarzewski created CXF-4963:
-------------------------------------------
Summary: Unable to set prettyLogging for class extending LoggingOutInterceptor
Key: CXF-4963
URL: https://issues.apache.org/jira/browse/CXF-4963
Project: CXF
Issue Type: Bug
Components: Bus
Affects Versions: 2.7.4
Environment: Ubuntu Linux 12.04 with Java SE 6 / Solaris 5.10 with Java SE 6
Reporter: Przemysław Ołtarzewski
Priority: Minor
I'm using the following configuration in cxf.xml:
{quote}
[...]
<bean id="logInbound" class="[...]">
<property name="prettyLogging" value="true" />
</bean>
<bean id="logOutbound" class="[...]">
<property name="prettyLogging" value="true" />
</bean>
<cxf:bus>
<cxf:inInterceptors>
<ref bean="logInbound" />
</cxf:inInterceptors>
<cxf:outInterceptors>
<ref bean="logOutbound" />
</cxf:outInterceptors>
<cxf:inFaultInterceptors>
<ref bean="logInbound" />
</cxf:inFaultInterceptors>
<cxf:outFaultInterceptors>
<ref bean="logOutbound" />
</cxf:outFaultInterceptors>
<cxf:features>
<cxf:logging />
</cxf:features>
</cxf:bus>
[...]
{quote}
where _logInbound_ and _logOutbound_ are Spring bean instances of classes extending _LoggingInInterceptor_ and _LoggingOutInterceptor_, respectively (class names are irrelevant).
After upgrade from version 2.3.2 to 2.7.4 it seems that the _prettyLogging_ value is ignored for intercepted outbound messages.
>From what I could observe during a debugging session, the problem is that there are actually two interceptors, logging outbound messages and sharing the same stream. First one of them is _logOutbound_. The second one is some internal instance of _LoggingOutInterceptor_.
The internal instance is called first and used to format the message. Since it has pretty printing disabled, the message is unformatted. When my instance (_logOutbound_) is called, it verifies that the message has already been logged into the stream and doesn't repeat this step.
Finally the cached and unformatted message is logged and the _prettyLogging_ property is effectively ignored.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira