On Monday 10 January 2011 3:05:57 am Idar Borlaug wrote:
> Hi
> 
> I have now a bunch of services created with CXF. What i would like is
> to log all exceptions, that CXF throws to its client as SoapFaults, to
> a log file on the server.
> Whats a good way to do this? Do I have to create my own cxf interceptor?

There are two ways to deal with this depending on what you really want to log:

1) You can create your own interceptor and stick it on the FaultOut chain on 
the Bus.   A subclass of our LoggingOutInterceptor would work fine and may be 
a good start.   This would log the exact SOAP message as sent to the client.

2) If you don't want the exact SOAP message and are really just concerned with 
the Exception itself, you can create an instance of 
org.apache.cxf.logging.FaultListener
and configure that as a property on the Bus (use 
org.apache.cxf.logging.FaultListener as the key, the instance as the value).   
You would get called for each exception and  you can then pretty much do 
whatever you want to do to log it.


-- 
Daniel Kulp
[email protected]
http://dankulp.com/blog

Reply via email to