On Tue, Nov 8, 2011 at 7:41 PM, Jean-Baptiste Onofré <j...@nanthrax.net> wrote: > Hi Claus, > > It's interesting, and, definitely, it makes sense. > > Regarding the implementation, I remember that Christian Schneider talked > about a "change" in CXF to enhance the logging. If I remember well, he > talked about shipping logging in in/out by default, and enabling it by > configuration (if I understood right ;)). >
Yeah that would be a bonus :). Then you can with karaf shell / JMX etc. enable / disable the logging on the fly. The Camel Tracer is like that. Its included by default, but disabled. > Regards > JB > > On 11/08/2011 11:36 AM, Claus Ibsen wrote: >> >> Hi >> >> When working with camel-cxf, you can get pretty fast setup with the >> Camel cxfEndpoint element as shown: >> >> For example to call the famous weather web service >> >> <cxf:cxfEndpoint id="weatherWebService" >> address="http://www.webservicex.net/globalweather.asmx" >> endpointName="s:GlobalWeatherSoap" >> serviceName="s:GlobalWeather" >> >> wsdlURL="http://www.webservicex.net/globalweather.asmx?WSDL" >> xmlns:s="http://www.webserviceX.NET"> >> >> >> However to enabling logging of INBOUND and OUTBOUND messages with CXF, >> you need to thinker with interceptors. >> And IMHO that is a bit PITA as its kinda hard to remember all the >> mighty XML stuff you need to add, just to see what is send out and >> comes back in the console / logs. >> >> Currently you would have to added these 4 interceptors, and remember >> also what the class names of the interceptor bean is >> >> <cxf:cxfEndpoint id="weatherWebService" >> address="http://www.webservicex.net/globalweather.asmx" >> endpointName="s:GlobalWeatherSoap" >> serviceName="s:GlobalWeather" >> >> wsdlURL="http://www.webservicex.net/globalweather.asmx?WSDL" >> xmlns:s="http://www.webserviceX.NET"> >> >> <cxf:inInterceptors> >> <bean >> class="org.apache.cxf.interceptor.LoggingInInterceptor"/> >> </cxf:inInterceptors> >> <cxf:inFaultInterceptors> >> <bean >> class="org.apache.cxf.interceptor.LoggingInInterceptor"/> >> </cxf:inFaultInterceptors> >> <cxf:outInterceptors> >> <bean >> class="org.apache.cxf.interceptor.LoggingOutInterceptor"/> >> </cxf:outInterceptors> >> <cxf:outFaultInterceptors> >> <bean >> class="org.apache.cxf.interceptor.LoggingOutInterceptor"/> >> </cxf:outFaultInterceptors> >> >> </cxf:cxfEndpoint> >> >> >> Thats is a lot of XML just to play with a web service. >> >> It would be much easier if there was a attribute that could setup >> these logging interceptors for you out of the box. So all you have to >> do was set logging attribute to true. >> >> <cxf:cxfEndpoint id="weatherWebService" >> logging="true" >> address="http://www.webservicex.net/globalweather.asmx" >> endpointName="s:GlobalWeatherSoap" >> serviceName="s:GlobalWeather" >> >> wsdlURL="http://www.webservicex.net/globalweather.asmx?WSDL" >> xmlns:s="http://www.webserviceX.NET"> >> >> >> Any thoughts? >> >> >> > > -- > Jean-Baptiste Onofré > jbono...@apache.org > http://blog.nanthrax.net > Talend - http://www.talend.com > -- Claus Ibsen ----------------- FuseSource Email: cib...@fusesource.com Web: http://fusesource.com Twitter: davsclaus, fusenews Blog: http://davsclaus.blogspot.com/ Author of Camel in Action: http://www.manning.com/ibsen/