You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by kiffin <ki...@yahoo.com> on 2010/02/12 21:06:52 UTC

com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system property -
com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum - which dumps the
request/response message on the console. Does CXF have an equivalent
property to dump the request/response message on the console? 

-- 
View this message in context: http://old.nabble.com/com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump-tp27568694p27568694.html
Sent from the cxf-user mailing list archive at Nabble.com.


Re: com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Posted by Daniel Kulp <dk...@apache.org>.
On Tue February 16 2010 6:17:39 pm kiffin wrote:
> Dan,
> 
> Thanks for your help. I get the stack trace returned with the soap fault,
> but it doesn't return the root cause of the stack trace.
> 
> Example
>     throw new SomeException(new AnotherException());
> 
> I get the stack trace for SomeException, but I don't get AnotherException
> as its cause. Is there any way to get the cause returned to the client
> too?

Not at this time.   If you want to take a look, the code to add the stack 
trace and such to the fault is in: 
http://svn.apache.org/repos/asf/cxf/trunk/rt/bindings/soap/src/main/java/org/apache/cxf/binding/soap/interceptor/Soap11FaultOutInterceptor.java

A patch to that to enhance it would be welcome.   :-)

Dan




> Thanks,
> Kiffin
> 
> dkulp wrote:
> > On Tue February 16 2010 12:50:44 pm kiffin wrote:
> >> Dan,
> >> 
> >> I am using the Endpoint class in my unit test. Could I call the
> >> setProperties method with this property?
> > 
> > I think so, yes.   You may need to to do it before the call to publish
> > though.
> > Basically, do ep = Endpoint.create(...) and then ep.publish(addr) as
> > separate
> > steps with the ep.setProeprties stuff in the middle.
> > 
> > Dan
> > 
> >> Thanks,
> >> Kiffin
> >> 
> >> dkulp wrote:
> >> > You can give this a try, but a caveat in that I've never tried this so
> >> 
> >> I
> >> 
> >> > don't
> >> > know what the resulting soap message looks like:
> >> > 
> >> > If you set a property on the endpoint like:
> >> > <jaxws:properties>
> >> > 
> >> >     <entry key="faultStackTraceEnabled" value="true" />
> >> > 
> >> > </jaxws:properties>
> >> > 
> >> > the the SOAP out interceptors will stick a stack trace into the fault.
> >> > Not
> >> > exactly sure what that ends up looking like.
> >> > 
> >> > Dan
> >> > 
> >> > On Fri February 12 2010 5:58:05 pm kiffin wrote:
> >> >> That response message was from running a test using the CXF stack.
> >> >> The message below is from the Sun stack running the same test. We
> >> >> need to
> >> 
> >> do
> >> 
> >> >> some post-processing on service exception and need to know the root
> >> >> cause of that exception.
> >> >> 
> >> >> Thanks,
> >> >> Kiffin
> >> >> 
> >> >> <?xml version="1.0" standalone="no"?>
> >> >> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
> >> >> 
> >> >>     <S:Body>
> >> >>     
> >> >>         <ns2:Fault
> >> 
> >> xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/"
> >> 
> >> >> xmlns:ns3="http://www.w3.org/2003/05/soap-envelope">
> >> >> 
> >> >>             <faultcode>
> >> >>             
> >> >>                 ns2:Server
> >> >>             
> >> >>             </faultcode>
> >> >>             <faultstring>
> >> >>             
> >> >>                 java.lang.RuntimeException: Mock up exception
> >> >>             
> >> >>             </faultstring>
> >> >>             <detail>
> >> >>             
> >> >>                 <ns2:exception
> >> >>                 xmlns:ns2="http://jax-ws.dev.java.net/"
> >> >> 
> >> >> class="com.expd.arch.service.ServiceException" note="To disable this
> >> >> feature, set
> >> >> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace
> >> >> system property to false">
> >> >> 
> >> >>                     <message>
> >> >>                     
> >> >>                         java.lang.RuntimeException: Mock up exception
> >> >>                     
> >> >>                     </message>
> >> >>                     <ns2:stackTrace>
> >> >>                     
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.expd.arch.service.ServiceException"
> >> >> file="ServiceException.java"
> >> >> line="101" method="wrap"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.expd.service.calculation.impl.CalculationService"
> >> >> file="CalculationService.java" line="134"
> >> >> method="throwExceptionInMethod"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="sun.reflect.NativeMethodAccessorImpl"
> >> >> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="sun.reflect.NativeMethodAccessorImpl"
> >> >> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="sun.reflect.DelegatingMethodAccessorImpl"
> >> >> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
> >> >> 
> >> >>                         <ns2:frame class="java.lang.reflect.Method"
> >> >> 
> >> >> file="Method.java" line="597" method="invoke"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.api.server.InstanceResolver$1"
> >> >> file="InstanceResolver.java" line="246" method="invoke"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
> >> >> line="146" method="invoke"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
> >> >> file="EndpointMethodHandler.java" line="257" method="invoke"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
> >> >> file="SEIInvokerTube.java"
> >> >> line="93" method="processRequest"/>
> >> >> 
> >> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.api.pipe.Fiber"
> >> 
> >> >> file="Fiber.java" line="598" method="__doRun"/>
> >> >> 
> >> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.api.pipe.Fiber"
> >> 
> >> >> file="Fiber.java" line="557" method="_doRun"/>
> >> >> 
> >> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.api.pipe.Fiber"
> >> 
> >> >> file="Fiber.java" line="542" method="doRun"/>
> >> >> 
> >> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.api.pipe.Fiber"
> >> 
> >> >> file="Fiber.java" line="439" method="runSync"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.server.WSEndpointImpl$2"
> >> >> file="WSEndpointImpl.java" line="243" method="process"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
> >> >> file="HttpAdapter.java" line="444" method="handle"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.transport.http.HttpAdapter"
> >> >> file="HttpAdapter.java" line="244" method="handle"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> >> >> file="WSHttpHandler.java" line="106" method="handleExchange"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> >> >> file="WSHttpHandler.java" line="91" method="handle"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
> >> 
> >> line="65"
> >> 
> >> >> method="doFilter"/>
> >> >> 
> >> >>                         <ns2:frame
> >> 
> >> class="sun.net.httpserver.AuthFilter"
> >> 
> >> >> file="AuthFilter.java" line="65" method="doFilter"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
> >> 
> >> line="68"
> >> 
> >> >> method="doFilter"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
> >> >> file="ServerImpl.java" line="555" method="handle"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
> >> 
> >> line="65"
> >> 
> >> >> method="doFilter"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
> >> >> line="527" method="run"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> >> >> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
> >> >> 
> >> >>                         <ns2:frame
> >> >> 
> >> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> >> >> file="ThreadPoolExecutor.java" line="908" method="run"/>
> >> >> 
> >> >>                         <ns2:frame class="java.lang.Thread"
> >> >> 
> >> >> file="Thread.java" line="619" method="run"/>
> >> >> 
> >> >>                     </ns2:stackTrace>
> >> >>                     <ns2:cause class="java.lang.RuntimeException"
> >> >> 
> >> >> note="To
> >> >> disable this feature, set
> >> >> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system
> >> >> property to false">
> >> >> 
> >> >>                         <message>
> >> >>                         
> >> >>                             Mock up exception
> >> >>                         
> >> >>                         </message>
> >> >>                         <ns2:stackTrace>
> >> >>                         
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.expd.service.calculation.impl.CalculationService"
> >> >> file="CalculationService.java" line="126"
> >> >> method="throwRuntimeException"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.expd.service.calculation.impl.CalculationService"
> >> >> file="CalculationService.java" line="132"
> >> >> method="throwExceptionInMethod"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="sun.reflect.NativeMethodAccessorImpl"
> >> >> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="sun.reflect.NativeMethodAccessorImpl"
> >> >> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="sun.reflect.DelegatingMethodAccessorImpl"
> >> >> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
> >> >> 
> >> >>                             <ns2:frame
> >> 
> >> class="java.lang.reflect.Method"
> >> 
> >> >> file="Method.java" line="597" method="invoke"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.api.server.InstanceResolver$1"
> >> >> file="InstanceResolver.java" line="246" method="invoke"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
> >> >> line="146" method="invoke"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
> >> >> file="EndpointMethodHandler.java" line="257" method="invoke"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
> >> >> file="SEIInvokerTube.java"
> >> >> line="93" method="processRequest"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="598"
> >> >> method="__doRun"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="557"
> >> >> method="_doRun"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="542"
> >> >> method="doRun"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="439"
> >> >> method="runSync"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.server.WSEndpointImpl$2"
> >> >> file="WSEndpointImpl.java" line="243" method="process"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
> >> >> file="HttpAdapter.java" line="444" method="handle"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.transport.http.HttpAdapter"
> >> >> file="HttpAdapter.java" line="244" method="handle"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> >> >> file="WSHttpHandler.java" line="106" method="handleExchange"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> >> >> file="WSHttpHandler.java" line="91" method="handle"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
> >> 
> >> line="65"
> >> 
> >> >> method="doFilter"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="sun.net.httpserver.AuthFilter" file="AuthFilter.java"
> >> >> line="65" method="doFilter"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
> >> 
> >> line="68"
> >> 
> >> >> method="doFilter"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
> >> >> file="ServerImpl.java" line="555" method="handle"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
> >> 
> >> line="65"
> >> 
> >> >> method="doFilter"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
> >> >> line="527" method="run"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> >> >> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
> >> >> 
> >> >>                             <ns2:frame
> >> >> 
> >> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> >> >> file="ThreadPoolExecutor.java" line="908" method="run"/>
> >> >> 
> >> >>                             <ns2:frame class="java.lang.Thread"
> >> >> 
> >> >> file="Thread.java" line="619" method="run"/>
> >> >> 
> >> >>                         </ns2:stackTrace>
> >> >>                     
> >> >>                     </ns2:cause>
> >> >>                 
> >> >>                 </ns2:exception>
> >> >>             
> >> >>             </detail>
> >> >>         
> >> >>         </ns2:Fault>
> >> >>     
> >> >>     </S:Body>
> >> >> 
> >> >> </S:Envelope>
> >> >> 
> >> >> dkulp wrote:
> >> >> > Per spec, the "faultstring" should be the result of
> >> >> > exception.getMessage().
> >> >> > Thus, we output whatever that returns.   Is there any way you can
> >> 
> >> look
> >> 
> >> >> at
> >> >> 
> >> >> > the
> >> >> > sun generated exceptions or something to see if they are doing
> >> >> 
> >> >> something
> >> >> 
> >> >> > funky
> >> >> > with the getMessage() call?
> >> >> > 
> >> >> > Is the sample below from the CXF test or the Sun test?
> >> >> > 
> >> >> > Dan
> >> >> > 
> >> >> > On Fri February 12 2010 5:26:51 pm kiffin wrote:
> >> >> >> I have another question on soap fault. I could see the root cause
> >> >> >> returning
> >> >> >> from the soap fault from my Sun JAX-WS service,  but I am not
> >> 
> >> seeing
> >> 
> >> >> it
> >> >> 
> >> >> >> in
> >> >> >> the CXF implementation. Is there a way for CXF to return the root
> >> >> 
> >> >> cause
> >> >> 
> >> >> >> of
> >> >> >> the soap fault to a client?  Here's the example response from my
> >> >> >> test.
> >> >> >> 
> >> >> >> <soap:Envelope
> >> >> >> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
> >> >> >> 
> >> >> >>     <soap:Header/>
> >> >> >>     <soap:Body>
> >> >> >>     
> >> >> >>         <soap:Fault>
> >> >> >>         
> >> >> >>             <faultcode>
> >> >> >>             
> >> >> >>                 soap:Server
> >> >> >>             
> >> >> >>             </faultcode>
> >> >> >>             <faultstring>
> >> >> >>             
> >> >> >>                 java.lang.RuntimeException: Mock up exception
> >> >> >>             
> >> >> >>             </faultstring>
> >> >> >>             <detail>
> >> >> >>             
> >> >> >>                 <ns1:ServiceException
> >> >> >> 
> >> >> >> xmlns:ns1="urn:expd.com:service:calculation"/>
> >> >> >> 
> >> >> >>             </detail>
> >> >> >>         
> >> >> >>         </soap:Fault>
> >> >> >>     
> >> >> >>     </soap:Body>
> >> >> >> 
> >> >> >> </soap:Envelope>
> >> >> >> 
> >> >> >> Thanks,
> >> >> >> Kiffin
> >> >> >> 
> >> >> >> dkulp wrote:
> >> >> >> > On Fri February 12 2010 3:06:52 pm kiffin wrote:
> >> >> >> >> Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system
> >> >> >> 
> >> >> >> property
> >> >> >> 
> >> >> >> >> - com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum -
> >> >> 
> >> >> which
> >> >> 
> >> >> >> >> dumps the request/response message on the console. Does CXF
> >> >> >> >> have an equivalent property to dump the request/response
> >> >> >> >> message on the console?
> >> >> >> > 
> >> >> >> > OK.  Didn't know about that specific property.   Sun seems to
> >> 
> >> have
> >> 
> >> >> >> > several properties like that which CXF would respond to, but
> >> >> >> > that
> >> >> 
> >> >> one
> >> >> 
> >> >> >> > isn't one. I'll add it.
> >> >> >> > 
> >> >> >> > With 2.2.6, you can chose one of:
> >> >> >> > 
> >> >> >> > Boolean.getBoolean("org.apache.cxf.logging.enabled");
> >> 
> >> Boolean.getBoolean("com.sun.xml.ws.transport.local.LocalTransportPipe.du
> >> 
> >> >> >> m
> >> >> >> 
> >> >> >> > p");
> >> 
> >> Boolean.getBoolean("com.sun.xml.ws.util.pipe.StandaloneTubeAssembler.dum
> >> 
> >> >> >> > p");
> >> >> 
> >> >> Boolean.getBoolean("com.sun.xml.ws.transport.http.HttpAdapter.dump");
> >> >> 
> >> >> >> > It wouldn't go to the console.  It would go the
> >> 
> >> java.util.logging,
> >> 
> >> >> but
> >> >> 
> >> >> >> by
> >> >> >> 
> >> >> >> > default, that would go to the console.

-- 
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog

Re: com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Posted by kiffin <ki...@yahoo.com>.
Dan,

I tried the following code in my unit test, but I don't see the stack trace
returning with the soap fault.

        Endpoint endpoint = Endpoint.create(serviceInstance);
        List<Handler> handlers = new ArrayList<Handler>();
        Map<String, Object> properties = new HashMap<String, Object>();

        properties.put("faultStackTraceEnabled",
                       "true");
        handlers.add(new ServiceHandler());
        endpoint.getBinding().setHandlerChain(handlers);
        endpoint.publish(endpointLocation);
        endpoint.setProperties(properties);

My response still misses the stack trace

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <soap:Fault>
            <faultcode>soap:Client</faultcode>
            <faultstring>Mock up exception</faultstring>
        </soap:Fault>
    </soap:Body>
</soap:Envelope>

Thanks,
Kiffin




kiffin wrote:
> 
> I have the following code in my unit test and I get an "Connection refuse
> connect" exception
> 
>         Endpoint endpoint = Endpoint.create(serviceInstance);
>         List<Handler> handlers = new ArrayList<Handler>();
>         Map<String, Object> properties = new HashMap<String, Object>();
> 
>         properties.put("faultStackTraceEnabled",
>                        "true");
>         handlers.add(new ServiceHandler());
>         endpoint.getBinding().setHandlerChain(handlers);
>         endpoint.setProperties(properties);
>         endpoint.publish(endpointLocation);
> 
> If I change it to the following code, the endpoint works but not the
> property.
> 
>         List<Handler> handlers = new ArrayList<Handler>();
>         Map<String, Object> properties = new HashMap<String, Object>();
> 
>         properties.put("faultStackTraceEnabled",
>                        "true");
>         handlers.add(new ServiceHandler());
> 
>         Endpoint endpoint = Endpoint.publish(endpointLocation,
>                                                          
> serviceInstance);
>         endpoint.getBinding().setHandlerChain(handlers);
>         endpoint.setProperties(properties);
> 
> I don't understand why the first version wouldn't work. 
> 
> 
> 
> 
> dkulp wrote:
>> 
>> On Tue February 16 2010 12:50:44 pm kiffin wrote:
>>> Dan,
>>> 
>>> I am using the Endpoint class in my unit test. Could I call the
>>> setProperties method with this property?
>> 
>> I think so, yes.   You may need to to do it before the call to publish
>> though.   
>> Basically, do ep = Endpoint.create(...) and then ep.publish(addr) as
>> separate 
>> steps with the ep.setProeprties stuff in the middle.
>> 
>> Dan
>> 
>> 
>>> 
>>> Thanks,
>>> Kiffin
>>> 
>>> dkulp wrote:
>>> > You can give this a try, but a caveat in that I've never tried this so
>>> I
>>> > don't
>>> > know what the resulting soap message looks like:
>>> > 
>>> > If you set a property on the endpoint like:
>>> > <jaxws:properties>
>>> > 
>>> >     <entry key="faultStackTraceEnabled" value="true" />
>>> > 
>>> > </jaxws:properties>
>>> > 
>>> > the the SOAP out interceptors will stick a stack trace into the fault.
>>> > Not
>>> > exactly sure what that ends up looking like.
>>> > 
>>> > Dan
>>> > 
>>> > On Fri February 12 2010 5:58:05 pm kiffin wrote:
>>> >> That response message was from running a test using the CXF stack.
>>> The
>>> >> message below is from the Sun stack running the same test. We need to
>>> do
>>> >> some post-processing on service exception and need to know the root
>>> >> cause of that exception.
>>> >> 
>>> >> Thanks,
>>> >> Kiffin
>>> >> 
>>> >> <?xml version="1.0" standalone="no"?>
>>> >> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
>>> >> 
>>> >>     <S:Body>
>>> >>     
>>> >>         <ns2:Fault
>>> xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/"
>>> >> 
>>> >> xmlns:ns3="http://www.w3.org/2003/05/soap-envelope">
>>> >> 
>>> >>             <faultcode>
>>> >>             
>>> >>                 ns2:Server
>>> >>             
>>> >>             </faultcode>
>>> >>             <faultstring>
>>> >>             
>>> >>                 java.lang.RuntimeException: Mock up exception
>>> >>             
>>> >>             </faultstring>
>>> >>             <detail>
>>> >>             
>>> >>                 <ns2:exception
>>> xmlns:ns2="http://jax-ws.dev.java.net/"
>>> >> 
>>> >> class="com.expd.arch.service.ServiceException" note="To disable this
>>> >> feature, set
>>> >> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace
>>> >> system property to false">
>>> >> 
>>> >>                     <message>
>>> >>                     
>>> >>                         java.lang.RuntimeException: Mock up exception
>>> >>                     
>>> >>                     </message>
>>> >>                     <ns2:stackTrace>
>>> >>                     
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.expd.arch.service.ServiceException"
>>> >> file="ServiceException.java"
>>> >> line="101" method="wrap"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.expd.service.calculation.impl.CalculationService"
>>> >> file="CalculationService.java" line="134"
>>> >> method="throwExceptionInMethod"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="sun.reflect.NativeMethodAccessorImpl"
>>> >> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="sun.reflect.NativeMethodAccessorImpl"
>>> >> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="sun.reflect.DelegatingMethodAccessorImpl"
>>> >> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
>>> >> 
>>> >>                         <ns2:frame class="java.lang.reflect.Method"
>>> >> 
>>> >> file="Method.java" line="597" method="invoke"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.api.server.InstanceResolver$1"
>>> >> file="InstanceResolver.java" line="246" method="invoke"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
>>> >> line="146" method="invoke"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
>>> >> file="EndpointMethodHandler.java" line="257" method="invoke"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
>>> >> file="SEIInvokerTube.java"
>>> >> line="93" method="processRequest"/>
>>> >> 
>>> >>                         <ns2:frame
>>> class="com.sun.xml.ws.api.pipe.Fiber"
>>> >> 
>>> >> file="Fiber.java" line="598" method="__doRun"/>
>>> >> 
>>> >>                         <ns2:frame
>>> class="com.sun.xml.ws.api.pipe.Fiber"
>>> >> 
>>> >> file="Fiber.java" line="557" method="_doRun"/>
>>> >> 
>>> >>                         <ns2:frame
>>> class="com.sun.xml.ws.api.pipe.Fiber"
>>> >> 
>>> >> file="Fiber.java" line="542" method="doRun"/>
>>> >> 
>>> >>                         <ns2:frame
>>> class="com.sun.xml.ws.api.pipe.Fiber"
>>> >> 
>>> >> file="Fiber.java" line="439" method="runSync"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.server.WSEndpointImpl$2"
>>> >> file="WSEndpointImpl.java" line="243" method="process"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
>>> >> file="HttpAdapter.java" line="444" method="handle"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.transport.http.HttpAdapter"
>>> >> file="HttpAdapter.java" line="244" method="handle"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>>> >> file="WSHttpHandler.java" line="106" method="handleExchange"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>>> >> file="WSHttpHandler.java" line="91" method="handle"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>>> line="65"
>>> >> method="doFilter"/>
>>> >> 
>>> >>                         <ns2:frame
>>> class="sun.net.httpserver.AuthFilter"
>>> >> 
>>> >> file="AuthFilter.java" line="65" method="doFilter"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>>> line="68"
>>> >> method="doFilter"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
>>> >> file="ServerImpl.java" line="555" method="handle"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>>> line="65"
>>> >> method="doFilter"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
>>> >> line="527" method="run"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>>> >> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
>>> >> 
>>> >>                         <ns2:frame
>>> >> 
>>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>>> >> file="ThreadPoolExecutor.java" line="908" method="run"/>
>>> >> 
>>> >>                         <ns2:frame class="java.lang.Thread"
>>> >> 
>>> >> file="Thread.java" line="619" method="run"/>
>>> >> 
>>> >>                     </ns2:stackTrace>
>>> >>                     <ns2:cause class="java.lang.RuntimeException"
>>> >> 
>>> >> note="To
>>> >> disable this feature, set
>>> >> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system
>>> >> property to false">
>>> >> 
>>> >>                         <message>
>>> >>                         
>>> >>                             Mock up exception
>>> >>                         
>>> >>                         </message>
>>> >>                         <ns2:stackTrace>
>>> >>                         
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.expd.service.calculation.impl.CalculationService"
>>> >> file="CalculationService.java" line="126"
>>> >> method="throwRuntimeException"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.expd.service.calculation.impl.CalculationService"
>>> >> file="CalculationService.java" line="132"
>>> >> method="throwExceptionInMethod"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="sun.reflect.NativeMethodAccessorImpl"
>>> >> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="sun.reflect.NativeMethodAccessorImpl"
>>> >> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="sun.reflect.DelegatingMethodAccessorImpl"
>>> >> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
>>> >> 
>>> >>                             <ns2:frame
>>> class="java.lang.reflect.Method"
>>> >> 
>>> >> file="Method.java" line="597" method="invoke"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.api.server.InstanceResolver$1"
>>> >> file="InstanceResolver.java" line="246" method="invoke"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
>>> >> line="146" method="invoke"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
>>> >> file="EndpointMethodHandler.java" line="257" method="invoke"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
>>> >> file="SEIInvokerTube.java"
>>> >> line="93" method="processRequest"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="598"
>>> >> method="__doRun"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="557"
>>> >> method="_doRun"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="542"
>>> >> method="doRun"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="439"
>>> >> method="runSync"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.server.WSEndpointImpl$2"
>>> >> file="WSEndpointImpl.java" line="243" method="process"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
>>> >> file="HttpAdapter.java" line="444" method="handle"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.transport.http.HttpAdapter"
>>> >> file="HttpAdapter.java" line="244" method="handle"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>>> >> file="WSHttpHandler.java" line="106" method="handleExchange"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>>> >> file="WSHttpHandler.java" line="91" method="handle"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>>> line="65"
>>> >> method="doFilter"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="sun.net.httpserver.AuthFilter" file="AuthFilter.java"
>>> line="65"
>>> >> method="doFilter"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>>> line="68"
>>> >> method="doFilter"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
>>> >> file="ServerImpl.java" line="555" method="handle"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>>> line="65"
>>> >> method="doFilter"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
>>> >> line="527" method="run"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>>> >> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
>>> >> 
>>> >>                             <ns2:frame
>>> >> 
>>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>>> >> file="ThreadPoolExecutor.java" line="908" method="run"/>
>>> >> 
>>> >>                             <ns2:frame class="java.lang.Thread"
>>> >> 
>>> >> file="Thread.java" line="619" method="run"/>
>>> >> 
>>> >>                         </ns2:stackTrace>
>>> >>                     
>>> >>                     </ns2:cause>
>>> >>                 
>>> >>                 </ns2:exception>
>>> >>             
>>> >>             </detail>
>>> >>         
>>> >>         </ns2:Fault>
>>> >>     
>>> >>     </S:Body>
>>> >> 
>>> >> </S:Envelope>
>>> >> 
>>> >> dkulp wrote:
>>> >> > Per spec, the "faultstring" should be the result of
>>> >> > exception.getMessage().
>>> >> > Thus, we output whatever that returns.   Is there any way you can
>>> look
>>> >> 
>>> >> at
>>> >> 
>>> >> > the
>>> >> > sun generated exceptions or something to see if they are doing
>>> >> 
>>> >> something
>>> >> 
>>> >> > funky
>>> >> > with the getMessage() call?
>>> >> > 
>>> >> > Is the sample below from the CXF test or the Sun test?
>>> >> > 
>>> >> > Dan
>>> >> > 
>>> >> > On Fri February 12 2010 5:26:51 pm kiffin wrote:
>>> >> >> I have another question on soap fault. I could see the root cause
>>> >> >> returning
>>> >> >> from the soap fault from my Sun JAX-WS service,  but I am not
>>> seeing
>>> >> 
>>> >> it
>>> >> 
>>> >> >> in
>>> >> >> the CXF implementation. Is there a way for CXF to return the root
>>> >> 
>>> >> cause
>>> >> 
>>> >> >> of
>>> >> >> the soap fault to a client?  Here's the example response from my
>>> >> >> test.
>>> >> >> 
>>> >> >> <soap:Envelope
>>> >> >> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>>> >> >> 
>>> >> >>     <soap:Header/>
>>> >> >>     <soap:Body>
>>> >> >>     
>>> >> >>         <soap:Fault>
>>> >> >>         
>>> >> >>             <faultcode>
>>> >> >>             
>>> >> >>                 soap:Server
>>> >> >>             
>>> >> >>             </faultcode>
>>> >> >>             <faultstring>
>>> >> >>             
>>> >> >>                 java.lang.RuntimeException: Mock up exception
>>> >> >>             
>>> >> >>             </faultstring>
>>> >> >>             <detail>
>>> >> >>             
>>> >> >>                 <ns1:ServiceException
>>> >> >> 
>>> >> >> xmlns:ns1="urn:expd.com:service:calculation"/>
>>> >> >> 
>>> >> >>             </detail>
>>> >> >>         
>>> >> >>         </soap:Fault>
>>> >> >>     
>>> >> >>     </soap:Body>
>>> >> >> 
>>> >> >> </soap:Envelope>
>>> >> >> 
>>> >> >> Thanks,
>>> >> >> Kiffin
>>> >> >> 
>>> >> >> dkulp wrote:
>>> >> >> > On Fri February 12 2010 3:06:52 pm kiffin wrote:
>>> >> >> >> Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system
>>> >> >> 
>>> >> >> property
>>> >> >> 
>>> >> >> >> - com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum -
>>> >> 
>>> >> which
>>> >> 
>>> >> >> >> dumps the request/response message on the console. Does CXF
>>> have
>>> >> >> >> an equivalent property to dump the request/response message on
>>> >> >> >> the console?
>>> >> >> > 
>>> >> >> > OK.  Didn't know about that specific property.   Sun seems to
>>> have
>>> >> >> > several properties like that which CXF would respond to, but
>>> that
>>> >> 
>>> >> one
>>> >> 
>>> >> >> > isn't one. I'll add it.
>>> >> >> > 
>>> >> >> > With 2.2.6, you can chose one of:
>>> >> >> > 
>>> >> >> > Boolean.getBoolean("org.apache.cxf.logging.enabled");
>>> >> 
>>> >>
>>> Boolean.getBoolean("com.sun.xml.ws.transport.local.LocalTransportPipe.du
>>> >> 
>>> >> >> m
>>> >> >> 
>>> >> >> > p");
>>> >> 
>>> >>
>>> Boolean.getBoolean("com.sun.xml.ws.util.pipe.StandaloneTubeAssembler.dum
>>> >> 
>>> >> >> > p");
>>> >> 
>>> >> Boolean.getBoolean("com.sun.xml.ws.transport.http.HttpAdapter.dump");
>>> >> 
>>> >> >> > It wouldn't go to the console.  It would go the
>>> java.util.logging,
>>> >> 
>>> >> but
>>> >> 
>>> >> >> by
>>> >> >> 
>>> >> >> > default, that would go to the console.
>> 
>> -- 
>> Daniel Kulp
>> dkulp@apache.org
>> http://www.dankulp.com/blog
>> 
>> 
> 
> 

-- 
View this message in context: http://old.nabble.com/com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump-tp27568694p27614895.html
Sent from the cxf-user mailing list archive at Nabble.com.


Re: com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Posted by kiffin <ki...@yahoo.com>.
I have the following code in my unit test and I get an "Connection refuse
connect" exception

        Endpoint endpoint = Endpoint.create(serviceInstance);
        List<Handler> handlers = new ArrayList<Handler>();
        Map<String, Object> properties = new HashMap<String, Object>();

        properties.put("faultStackTraceEnabled",
                       "true");
        handlers.add(new ServiceHandler());
        endpoint.getBinding().setHandlerChain(handlers);
        endpoint.setProperties(properties);
        endpoint.publish(endpointLocation);

If I change it to the following code, the endpoint works but not the
property.

        List<Handler> handlers = new ArrayList<Handler>();
        Map<String, Object> properties = new HashMap<String, Object>();

        properties.put("faultStackTraceEnabled",
                       "true");
        handlers.add(new ServiceHandler());

        Endpoint endpoint = Endpoint.publish(endpointLocation,
                                                          serviceInstance);
        endpoint.getBinding().setHandlerChain(handlers);
        endpoint.setProperties(properties);

I don't understand why the first version wouldn't work. 




dkulp wrote:
> 
> On Tue February 16 2010 12:50:44 pm kiffin wrote:
>> Dan,
>> 
>> I am using the Endpoint class in my unit test. Could I call the
>> setProperties method with this property?
> 
> I think so, yes.   You may need to to do it before the call to publish
> though.   
> Basically, do ep = Endpoint.create(...) and then ep.publish(addr) as
> separate 
> steps with the ep.setProeprties stuff in the middle.
> 
> Dan
> 
> 
>> 
>> Thanks,
>> Kiffin
>> 
>> dkulp wrote:
>> > You can give this a try, but a caveat in that I've never tried this so
>> I
>> > don't
>> > know what the resulting soap message looks like:
>> > 
>> > If you set a property on the endpoint like:
>> > <jaxws:properties>
>> > 
>> >     <entry key="faultStackTraceEnabled" value="true" />
>> > 
>> > </jaxws:properties>
>> > 
>> > the the SOAP out interceptors will stick a stack trace into the fault.
>> > Not
>> > exactly sure what that ends up looking like.
>> > 
>> > Dan
>> > 
>> > On Fri February 12 2010 5:58:05 pm kiffin wrote:
>> >> That response message was from running a test using the CXF stack. The
>> >> message below is from the Sun stack running the same test. We need to
>> do
>> >> some post-processing on service exception and need to know the root
>> >> cause of that exception.
>> >> 
>> >> Thanks,
>> >> Kiffin
>> >> 
>> >> <?xml version="1.0" standalone="no"?>
>> >> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
>> >> 
>> >>     <S:Body>
>> >>     
>> >>         <ns2:Fault
>> xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/"
>> >> 
>> >> xmlns:ns3="http://www.w3.org/2003/05/soap-envelope">
>> >> 
>> >>             <faultcode>
>> >>             
>> >>                 ns2:Server
>> >>             
>> >>             </faultcode>
>> >>             <faultstring>
>> >>             
>> >>                 java.lang.RuntimeException: Mock up exception
>> >>             
>> >>             </faultstring>
>> >>             <detail>
>> >>             
>> >>                 <ns2:exception xmlns:ns2="http://jax-ws.dev.java.net/"
>> >> 
>> >> class="com.expd.arch.service.ServiceException" note="To disable this
>> >> feature, set
>> >> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace
>> >> system property to false">
>> >> 
>> >>                     <message>
>> >>                     
>> >>                         java.lang.RuntimeException: Mock up exception
>> >>                     
>> >>                     </message>
>> >>                     <ns2:stackTrace>
>> >>                     
>> >>                         <ns2:frame
>> >> 
>> >> class="com.expd.arch.service.ServiceException"
>> >> file="ServiceException.java"
>> >> line="101" method="wrap"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.expd.service.calculation.impl.CalculationService"
>> >> file="CalculationService.java" line="134"
>> >> method="throwExceptionInMethod"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="sun.reflect.NativeMethodAccessorImpl"
>> >> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="sun.reflect.NativeMethodAccessorImpl"
>> >> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="sun.reflect.DelegatingMethodAccessorImpl"
>> >> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
>> >> 
>> >>                         <ns2:frame class="java.lang.reflect.Method"
>> >> 
>> >> file="Method.java" line="597" method="invoke"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.server.InstanceResolver$1"
>> >> file="InstanceResolver.java" line="246" method="invoke"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
>> >> line="146" method="invoke"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
>> >> file="EndpointMethodHandler.java" line="257" method="invoke"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
>> >> file="SEIInvokerTube.java"
>> >> line="93" method="processRequest"/>
>> >> 
>> >>                         <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber"
>> >> 
>> >> file="Fiber.java" line="598" method="__doRun"/>
>> >> 
>> >>                         <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber"
>> >> 
>> >> file="Fiber.java" line="557" method="_doRun"/>
>> >> 
>> >>                         <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber"
>> >> 
>> >> file="Fiber.java" line="542" method="doRun"/>
>> >> 
>> >>                         <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber"
>> >> 
>> >> file="Fiber.java" line="439" method="runSync"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.WSEndpointImpl$2"
>> >> file="WSEndpointImpl.java" line="243" method="process"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
>> >> file="HttpAdapter.java" line="444" method="handle"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.HttpAdapter"
>> >> file="HttpAdapter.java" line="244" method="handle"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> >> file="WSHttpHandler.java" line="106" method="handleExchange"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> >> file="WSHttpHandler.java" line="91" method="handle"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="65"
>> >> method="doFilter"/>
>> >> 
>> >>                         <ns2:frame
>> class="sun.net.httpserver.AuthFilter"
>> >> 
>> >> file="AuthFilter.java" line="65" method="doFilter"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="68"
>> >> method="doFilter"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
>> >> file="ServerImpl.java" line="555" method="handle"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="65"
>> >> method="doFilter"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
>> >> line="527" method="run"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> >> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> >> file="ThreadPoolExecutor.java" line="908" method="run"/>
>> >> 
>> >>                         <ns2:frame class="java.lang.Thread"
>> >> 
>> >> file="Thread.java" line="619" method="run"/>
>> >> 
>> >>                     </ns2:stackTrace>
>> >>                     <ns2:cause class="java.lang.RuntimeException"
>> >> 
>> >> note="To
>> >> disable this feature, set
>> >> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system
>> >> property to false">
>> >> 
>> >>                         <message>
>> >>                         
>> >>                             Mock up exception
>> >>                         
>> >>                         </message>
>> >>                         <ns2:stackTrace>
>> >>                         
>> >>                             <ns2:frame
>> >> 
>> >> class="com.expd.service.calculation.impl.CalculationService"
>> >> file="CalculationService.java" line="126"
>> >> method="throwRuntimeException"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.expd.service.calculation.impl.CalculationService"
>> >> file="CalculationService.java" line="132"
>> >> method="throwExceptionInMethod"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.reflect.NativeMethodAccessorImpl"
>> >> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.reflect.NativeMethodAccessorImpl"
>> >> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.reflect.DelegatingMethodAccessorImpl"
>> >> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> class="java.lang.reflect.Method"
>> >> 
>> >> file="Method.java" line="597" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.server.InstanceResolver$1"
>> >> file="InstanceResolver.java" line="246" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
>> >> line="146" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
>> >> file="EndpointMethodHandler.java" line="257" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
>> >> file="SEIInvokerTube.java"
>> >> line="93" method="processRequest"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="598"
>> >> method="__doRun"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="557"
>> >> method="_doRun"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="542"
>> >> method="doRun"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="439"
>> >> method="runSync"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.WSEndpointImpl$2"
>> >> file="WSEndpointImpl.java" line="243" method="process"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
>> >> file="HttpAdapter.java" line="444" method="handle"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.HttpAdapter"
>> >> file="HttpAdapter.java" line="244" method="handle"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> >> file="WSHttpHandler.java" line="106" method="handleExchange"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> >> file="WSHttpHandler.java" line="91" method="handle"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="65"
>> >> method="doFilter"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.net.httpserver.AuthFilter" file="AuthFilter.java" line="65"
>> >> method="doFilter"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="68"
>> >> method="doFilter"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
>> >> file="ServerImpl.java" line="555" method="handle"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="65"
>> >> method="doFilter"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
>> >> line="527" method="run"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> >> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> >> file="ThreadPoolExecutor.java" line="908" method="run"/>
>> >> 
>> >>                             <ns2:frame class="java.lang.Thread"
>> >> 
>> >> file="Thread.java" line="619" method="run"/>
>> >> 
>> >>                         </ns2:stackTrace>
>> >>                     
>> >>                     </ns2:cause>
>> >>                 
>> >>                 </ns2:exception>
>> >>             
>> >>             </detail>
>> >>         
>> >>         </ns2:Fault>
>> >>     
>> >>     </S:Body>
>> >> 
>> >> </S:Envelope>
>> >> 
>> >> dkulp wrote:
>> >> > Per spec, the "faultstring" should be the result of
>> >> > exception.getMessage().
>> >> > Thus, we output whatever that returns.   Is there any way you can
>> look
>> >> 
>> >> at
>> >> 
>> >> > the
>> >> > sun generated exceptions or something to see if they are doing
>> >> 
>> >> something
>> >> 
>> >> > funky
>> >> > with the getMessage() call?
>> >> > 
>> >> > Is the sample below from the CXF test or the Sun test?
>> >> > 
>> >> > Dan
>> >> > 
>> >> > On Fri February 12 2010 5:26:51 pm kiffin wrote:
>> >> >> I have another question on soap fault. I could see the root cause
>> >> >> returning
>> >> >> from the soap fault from my Sun JAX-WS service,  but I am not
>> seeing
>> >> 
>> >> it
>> >> 
>> >> >> in
>> >> >> the CXF implementation. Is there a way for CXF to return the root
>> >> 
>> >> cause
>> >> 
>> >> >> of
>> >> >> the soap fault to a client?  Here's the example response from my
>> >> >> test.
>> >> >> 
>> >> >> <soap:Envelope
>> >> >> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>> >> >> 
>> >> >>     <soap:Header/>
>> >> >>     <soap:Body>
>> >> >>     
>> >> >>         <soap:Fault>
>> >> >>         
>> >> >>             <faultcode>
>> >> >>             
>> >> >>                 soap:Server
>> >> >>             
>> >> >>             </faultcode>
>> >> >>             <faultstring>
>> >> >>             
>> >> >>                 java.lang.RuntimeException: Mock up exception
>> >> >>             
>> >> >>             </faultstring>
>> >> >>             <detail>
>> >> >>             
>> >> >>                 <ns1:ServiceException
>> >> >> 
>> >> >> xmlns:ns1="urn:expd.com:service:calculation"/>
>> >> >> 
>> >> >>             </detail>
>> >> >>         
>> >> >>         </soap:Fault>
>> >> >>     
>> >> >>     </soap:Body>
>> >> >> 
>> >> >> </soap:Envelope>
>> >> >> 
>> >> >> Thanks,
>> >> >> Kiffin
>> >> >> 
>> >> >> dkulp wrote:
>> >> >> > On Fri February 12 2010 3:06:52 pm kiffin wrote:
>> >> >> >> Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system
>> >> >> 
>> >> >> property
>> >> >> 
>> >> >> >> - com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum -
>> >> 
>> >> which
>> >> 
>> >> >> >> dumps the request/response message on the console. Does CXF have
>> >> >> >> an equivalent property to dump the request/response message on
>> >> >> >> the console?
>> >> >> > 
>> >> >> > OK.  Didn't know about that specific property.   Sun seems to
>> have
>> >> >> > several properties like that which CXF would respond to, but that
>> >> 
>> >> one
>> >> 
>> >> >> > isn't one. I'll add it.
>> >> >> > 
>> >> >> > With 2.2.6, you can chose one of:
>> >> >> > 
>> >> >> > Boolean.getBoolean("org.apache.cxf.logging.enabled");
>> >> 
>> >>
>> Boolean.getBoolean("com.sun.xml.ws.transport.local.LocalTransportPipe.du
>> >> 
>> >> >> m
>> >> >> 
>> >> >> > p");
>> >> 
>> >>
>> Boolean.getBoolean("com.sun.xml.ws.util.pipe.StandaloneTubeAssembler.dum
>> >> 
>> >> >> > p");
>> >> 
>> >> Boolean.getBoolean("com.sun.xml.ws.transport.http.HttpAdapter.dump");
>> >> 
>> >> >> > It wouldn't go to the console.  It would go the
>> java.util.logging,
>> >> 
>> >> but
>> >> 
>> >> >> by
>> >> >> 
>> >> >> > default, that would go to the console.
> 
> -- 
> Daniel Kulp
> dkulp@apache.org
> http://www.dankulp.com/blog
> 
> 

-- 
View this message in context: http://old.nabble.com/com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump-tp27568694p27613863.html
Sent from the cxf-user mailing list archive at Nabble.com.


Re: com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Posted by kiffin <ki...@yahoo.com>.
Dan,

Thanks for your help. I get the stack trace returned with the soap fault,
but it doesn't return the root cause of the stack trace.

Example
    throw new SomeException(new AnotherException());

I get the stack trace for SomeException, but I don't get AnotherException as
its cause. Is there any way to get the cause returned to the client too?

Thanks,
Kiffin



dkulp wrote:
> 
> On Tue February 16 2010 12:50:44 pm kiffin wrote:
>> Dan,
>> 
>> I am using the Endpoint class in my unit test. Could I call the
>> setProperties method with this property?
> 
> I think so, yes.   You may need to to do it before the call to publish
> though.   
> Basically, do ep = Endpoint.create(...) and then ep.publish(addr) as
> separate 
> steps with the ep.setProeprties stuff in the middle.
> 
> Dan
> 
> 
>> 
>> Thanks,
>> Kiffin
>> 
>> dkulp wrote:
>> > You can give this a try, but a caveat in that I've never tried this so
>> I
>> > don't
>> > know what the resulting soap message looks like:
>> > 
>> > If you set a property on the endpoint like:
>> > <jaxws:properties>
>> > 
>> >     <entry key="faultStackTraceEnabled" value="true" />
>> > 
>> > </jaxws:properties>
>> > 
>> > the the SOAP out interceptors will stick a stack trace into the fault.
>> > Not
>> > exactly sure what that ends up looking like.
>> > 
>> > Dan
>> > 
>> > On Fri February 12 2010 5:58:05 pm kiffin wrote:
>> >> That response message was from running a test using the CXF stack. The
>> >> message below is from the Sun stack running the same test. We need to
>> do
>> >> some post-processing on service exception and need to know the root
>> >> cause of that exception.
>> >> 
>> >> Thanks,
>> >> Kiffin
>> >> 
>> >> <?xml version="1.0" standalone="no"?>
>> >> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
>> >> 
>> >>     <S:Body>
>> >>     
>> >>         <ns2:Fault
>> xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/"
>> >> 
>> >> xmlns:ns3="http://www.w3.org/2003/05/soap-envelope">
>> >> 
>> >>             <faultcode>
>> >>             
>> >>                 ns2:Server
>> >>             
>> >>             </faultcode>
>> >>             <faultstring>
>> >>             
>> >>                 java.lang.RuntimeException: Mock up exception
>> >>             
>> >>             </faultstring>
>> >>             <detail>
>> >>             
>> >>                 <ns2:exception xmlns:ns2="http://jax-ws.dev.java.net/"
>> >> 
>> >> class="com.expd.arch.service.ServiceException" note="To disable this
>> >> feature, set
>> >> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace
>> >> system property to false">
>> >> 
>> >>                     <message>
>> >>                     
>> >>                         java.lang.RuntimeException: Mock up exception
>> >>                     
>> >>                     </message>
>> >>                     <ns2:stackTrace>
>> >>                     
>> >>                         <ns2:frame
>> >> 
>> >> class="com.expd.arch.service.ServiceException"
>> >> file="ServiceException.java"
>> >> line="101" method="wrap"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.expd.service.calculation.impl.CalculationService"
>> >> file="CalculationService.java" line="134"
>> >> method="throwExceptionInMethod"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="sun.reflect.NativeMethodAccessorImpl"
>> >> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="sun.reflect.NativeMethodAccessorImpl"
>> >> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="sun.reflect.DelegatingMethodAccessorImpl"
>> >> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
>> >> 
>> >>                         <ns2:frame class="java.lang.reflect.Method"
>> >> 
>> >> file="Method.java" line="597" method="invoke"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.server.InstanceResolver$1"
>> >> file="InstanceResolver.java" line="246" method="invoke"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
>> >> line="146" method="invoke"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
>> >> file="EndpointMethodHandler.java" line="257" method="invoke"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
>> >> file="SEIInvokerTube.java"
>> >> line="93" method="processRequest"/>
>> >> 
>> >>                         <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber"
>> >> 
>> >> file="Fiber.java" line="598" method="__doRun"/>
>> >> 
>> >>                         <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber"
>> >> 
>> >> file="Fiber.java" line="557" method="_doRun"/>
>> >> 
>> >>                         <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber"
>> >> 
>> >> file="Fiber.java" line="542" method="doRun"/>
>> >> 
>> >>                         <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber"
>> >> 
>> >> file="Fiber.java" line="439" method="runSync"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.WSEndpointImpl$2"
>> >> file="WSEndpointImpl.java" line="243" method="process"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
>> >> file="HttpAdapter.java" line="444" method="handle"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.HttpAdapter"
>> >> file="HttpAdapter.java" line="244" method="handle"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> >> file="WSHttpHandler.java" line="106" method="handleExchange"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> >> file="WSHttpHandler.java" line="91" method="handle"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="65"
>> >> method="doFilter"/>
>> >> 
>> >>                         <ns2:frame
>> class="sun.net.httpserver.AuthFilter"
>> >> 
>> >> file="AuthFilter.java" line="65" method="doFilter"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="68"
>> >> method="doFilter"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
>> >> file="ServerImpl.java" line="555" method="handle"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="65"
>> >> method="doFilter"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
>> >> line="527" method="run"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> >> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
>> >> 
>> >>                         <ns2:frame
>> >> 
>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> >> file="ThreadPoolExecutor.java" line="908" method="run"/>
>> >> 
>> >>                         <ns2:frame class="java.lang.Thread"
>> >> 
>> >> file="Thread.java" line="619" method="run"/>
>> >> 
>> >>                     </ns2:stackTrace>
>> >>                     <ns2:cause class="java.lang.RuntimeException"
>> >> 
>> >> note="To
>> >> disable this feature, set
>> >> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system
>> >> property to false">
>> >> 
>> >>                         <message>
>> >>                         
>> >>                             Mock up exception
>> >>                         
>> >>                         </message>
>> >>                         <ns2:stackTrace>
>> >>                         
>> >>                             <ns2:frame
>> >> 
>> >> class="com.expd.service.calculation.impl.CalculationService"
>> >> file="CalculationService.java" line="126"
>> >> method="throwRuntimeException"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.expd.service.calculation.impl.CalculationService"
>> >> file="CalculationService.java" line="132"
>> >> method="throwExceptionInMethod"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.reflect.NativeMethodAccessorImpl"
>> >> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.reflect.NativeMethodAccessorImpl"
>> >> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.reflect.DelegatingMethodAccessorImpl"
>> >> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> class="java.lang.reflect.Method"
>> >> 
>> >> file="Method.java" line="597" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.server.InstanceResolver$1"
>> >> file="InstanceResolver.java" line="246" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
>> >> line="146" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
>> >> file="EndpointMethodHandler.java" line="257" method="invoke"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
>> >> file="SEIInvokerTube.java"
>> >> line="93" method="processRequest"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="598"
>> >> method="__doRun"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="557"
>> >> method="_doRun"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="542"
>> >> method="doRun"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="439"
>> >> method="runSync"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.server.WSEndpointImpl$2"
>> >> file="WSEndpointImpl.java" line="243" method="process"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
>> >> file="HttpAdapter.java" line="444" method="handle"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.HttpAdapter"
>> >> file="HttpAdapter.java" line="244" method="handle"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> >> file="WSHttpHandler.java" line="106" method="handleExchange"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> >> file="WSHttpHandler.java" line="91" method="handle"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="65"
>> >> method="doFilter"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.net.httpserver.AuthFilter" file="AuthFilter.java" line="65"
>> >> method="doFilter"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="68"
>> >> method="doFilter"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
>> >> file="ServerImpl.java" line="555" method="handle"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java"
>> line="65"
>> >> method="doFilter"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
>> >> line="527" method="run"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> >> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
>> >> 
>> >>                             <ns2:frame
>> >> 
>> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> >> file="ThreadPoolExecutor.java" line="908" method="run"/>
>> >> 
>> >>                             <ns2:frame class="java.lang.Thread"
>> >> 
>> >> file="Thread.java" line="619" method="run"/>
>> >> 
>> >>                         </ns2:stackTrace>
>> >>                     
>> >>                     </ns2:cause>
>> >>                 
>> >>                 </ns2:exception>
>> >>             
>> >>             </detail>
>> >>         
>> >>         </ns2:Fault>
>> >>     
>> >>     </S:Body>
>> >> 
>> >> </S:Envelope>
>> >> 
>> >> dkulp wrote:
>> >> > Per spec, the "faultstring" should be the result of
>> >> > exception.getMessage().
>> >> > Thus, we output whatever that returns.   Is there any way you can
>> look
>> >> 
>> >> at
>> >> 
>> >> > the
>> >> > sun generated exceptions or something to see if they are doing
>> >> 
>> >> something
>> >> 
>> >> > funky
>> >> > with the getMessage() call?
>> >> > 
>> >> > Is the sample below from the CXF test or the Sun test?
>> >> > 
>> >> > Dan
>> >> > 
>> >> > On Fri February 12 2010 5:26:51 pm kiffin wrote:
>> >> >> I have another question on soap fault. I could see the root cause
>> >> >> returning
>> >> >> from the soap fault from my Sun JAX-WS service,  but I am not
>> seeing
>> >> 
>> >> it
>> >> 
>> >> >> in
>> >> >> the CXF implementation. Is there a way for CXF to return the root
>> >> 
>> >> cause
>> >> 
>> >> >> of
>> >> >> the soap fault to a client?  Here's the example response from my
>> >> >> test.
>> >> >> 
>> >> >> <soap:Envelope
>> >> >> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>> >> >> 
>> >> >>     <soap:Header/>
>> >> >>     <soap:Body>
>> >> >>     
>> >> >>         <soap:Fault>
>> >> >>         
>> >> >>             <faultcode>
>> >> >>             
>> >> >>                 soap:Server
>> >> >>             
>> >> >>             </faultcode>
>> >> >>             <faultstring>
>> >> >>             
>> >> >>                 java.lang.RuntimeException: Mock up exception
>> >> >>             
>> >> >>             </faultstring>
>> >> >>             <detail>
>> >> >>             
>> >> >>                 <ns1:ServiceException
>> >> >> 
>> >> >> xmlns:ns1="urn:expd.com:service:calculation"/>
>> >> >> 
>> >> >>             </detail>
>> >> >>         
>> >> >>         </soap:Fault>
>> >> >>     
>> >> >>     </soap:Body>
>> >> >> 
>> >> >> </soap:Envelope>
>> >> >> 
>> >> >> Thanks,
>> >> >> Kiffin
>> >> >> 
>> >> >> dkulp wrote:
>> >> >> > On Fri February 12 2010 3:06:52 pm kiffin wrote:
>> >> >> >> Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system
>> >> >> 
>> >> >> property
>> >> >> 
>> >> >> >> - com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum -
>> >> 
>> >> which
>> >> 
>> >> >> >> dumps the request/response message on the console. Does CXF have
>> >> >> >> an equivalent property to dump the request/response message on
>> >> >> >> the console?
>> >> >> > 
>> >> >> > OK.  Didn't know about that specific property.   Sun seems to
>> have
>> >> >> > several properties like that which CXF would respond to, but that
>> >> 
>> >> one
>> >> 
>> >> >> > isn't one. I'll add it.
>> >> >> > 
>> >> >> > With 2.2.6, you can chose one of:
>> >> >> > 
>> >> >> > Boolean.getBoolean("org.apache.cxf.logging.enabled");
>> >> 
>> >>
>> Boolean.getBoolean("com.sun.xml.ws.transport.local.LocalTransportPipe.du
>> >> 
>> >> >> m
>> >> >> 
>> >> >> > p");
>> >> 
>> >>
>> Boolean.getBoolean("com.sun.xml.ws.util.pipe.StandaloneTubeAssembler.dum
>> >> 
>> >> >> > p");
>> >> 
>> >> Boolean.getBoolean("com.sun.xml.ws.transport.http.HttpAdapter.dump");
>> >> 
>> >> >> > It wouldn't go to the console.  It would go the
>> java.util.logging,
>> >> 
>> >> but
>> >> 
>> >> >> by
>> >> >> 
>> >> >> > default, that would go to the console.
> 
> -- 
> Daniel Kulp
> dkulp@apache.org
> http://www.dankulp.com/blog
> 
> 

-- 
View this message in context: http://old.nabble.com/com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump-tp27568694p27615858.html
Sent from the cxf-user mailing list archive at Nabble.com.


Re: com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Posted by Daniel Kulp <dk...@apache.org>.
On Tue February 16 2010 12:50:44 pm kiffin wrote:
> Dan,
> 
> I am using the Endpoint class in my unit test. Could I call the
> setProperties method with this property?

I think so, yes.   You may need to to do it before the call to publish though.   
Basically, do ep = Endpoint.create(...) and then ep.publish(addr) as separate 
steps with the ep.setProeprties stuff in the middle.

Dan


> 
> Thanks,
> Kiffin
> 
> dkulp wrote:
> > You can give this a try, but a caveat in that I've never tried this so I
> > don't
> > know what the resulting soap message looks like:
> > 
> > If you set a property on the endpoint like:
> > <jaxws:properties>
> > 
> >     <entry key="faultStackTraceEnabled" value="true" />
> > 
> > </jaxws:properties>
> > 
> > the the SOAP out interceptors will stick a stack trace into the fault.
> > Not
> > exactly sure what that ends up looking like.
> > 
> > Dan
> > 
> > On Fri February 12 2010 5:58:05 pm kiffin wrote:
> >> That response message was from running a test using the CXF stack. The
> >> message below is from the Sun stack running the same test. We need to do
> >> some post-processing on service exception and need to know the root
> >> cause of that exception.
> >> 
> >> Thanks,
> >> Kiffin
> >> 
> >> <?xml version="1.0" standalone="no"?>
> >> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
> >> 
> >>     <S:Body>
> >>     
> >>         <ns2:Fault xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/"
> >> 
> >> xmlns:ns3="http://www.w3.org/2003/05/soap-envelope">
> >> 
> >>             <faultcode>
> >>             
> >>                 ns2:Server
> >>             
> >>             </faultcode>
> >>             <faultstring>
> >>             
> >>                 java.lang.RuntimeException: Mock up exception
> >>             
> >>             </faultstring>
> >>             <detail>
> >>             
> >>                 <ns2:exception xmlns:ns2="http://jax-ws.dev.java.net/"
> >> 
> >> class="com.expd.arch.service.ServiceException" note="To disable this
> >> feature, set
> >> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace
> >> system property to false">
> >> 
> >>                     <message>
> >>                     
> >>                         java.lang.RuntimeException: Mock up exception
> >>                     
> >>                     </message>
> >>                     <ns2:stackTrace>
> >>                     
> >>                         <ns2:frame
> >> 
> >> class="com.expd.arch.service.ServiceException"
> >> file="ServiceException.java"
> >> line="101" method="wrap"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.expd.service.calculation.impl.CalculationService"
> >> file="CalculationService.java" line="134"
> >> method="throwExceptionInMethod"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="sun.reflect.NativeMethodAccessorImpl"
> >> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="sun.reflect.NativeMethodAccessorImpl"
> >> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="sun.reflect.DelegatingMethodAccessorImpl"
> >> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
> >> 
> >>                         <ns2:frame class="java.lang.reflect.Method"
> >> 
> >> file="Method.java" line="597" method="invoke"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.api.server.InstanceResolver$1"
> >> file="InstanceResolver.java" line="246" method="invoke"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
> >> line="146" method="invoke"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
> >> file="EndpointMethodHandler.java" line="257" method="invoke"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
> >> file="SEIInvokerTube.java"
> >> line="93" method="processRequest"/>
> >> 
> >>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
> >> 
> >> file="Fiber.java" line="598" method="__doRun"/>
> >> 
> >>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
> >> 
> >> file="Fiber.java" line="557" method="_doRun"/>
> >> 
> >>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
> >> 
> >> file="Fiber.java" line="542" method="doRun"/>
> >> 
> >>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
> >> 
> >> file="Fiber.java" line="439" method="runSync"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.server.WSEndpointImpl$2"
> >> file="WSEndpointImpl.java" line="243" method="process"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
> >> file="HttpAdapter.java" line="444" method="handle"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.transport.http.HttpAdapter"
> >> file="HttpAdapter.java" line="244" method="handle"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> >> file="WSHttpHandler.java" line="106" method="handleExchange"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> >> file="WSHttpHandler.java" line="91" method="handle"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
> >> method="doFilter"/>
> >> 
> >>                         <ns2:frame class="sun.net.httpserver.AuthFilter"
> >> 
> >> file="AuthFilter.java" line="65" method="doFilter"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="68"
> >> method="doFilter"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
> >> file="ServerImpl.java" line="555" method="handle"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
> >> method="doFilter"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
> >> line="527" method="run"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> >> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
> >> 
> >>                         <ns2:frame
> >> 
> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> >> file="ThreadPoolExecutor.java" line="908" method="run"/>
> >> 
> >>                         <ns2:frame class="java.lang.Thread"
> >> 
> >> file="Thread.java" line="619" method="run"/>
> >> 
> >>                     </ns2:stackTrace>
> >>                     <ns2:cause class="java.lang.RuntimeException"
> >> 
> >> note="To
> >> disable this feature, set
> >> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system
> >> property to false">
> >> 
> >>                         <message>
> >>                         
> >>                             Mock up exception
> >>                         
> >>                         </message>
> >>                         <ns2:stackTrace>
> >>                         
> >>                             <ns2:frame
> >> 
> >> class="com.expd.service.calculation.impl.CalculationService"
> >> file="CalculationService.java" line="126"
> >> method="throwRuntimeException"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.expd.service.calculation.impl.CalculationService"
> >> file="CalculationService.java" line="132"
> >> method="throwExceptionInMethod"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="sun.reflect.NativeMethodAccessorImpl"
> >> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="sun.reflect.NativeMethodAccessorImpl"
> >> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="sun.reflect.DelegatingMethodAccessorImpl"
> >> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
> >> 
> >>                             <ns2:frame class="java.lang.reflect.Method"
> >> 
> >> file="Method.java" line="597" method="invoke"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.api.server.InstanceResolver$1"
> >> file="InstanceResolver.java" line="246" method="invoke"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
> >> line="146" method="invoke"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
> >> file="EndpointMethodHandler.java" line="257" method="invoke"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
> >> file="SEIInvokerTube.java"
> >> line="93" method="processRequest"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="598"
> >> method="__doRun"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="557"
> >> method="_doRun"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="542"
> >> method="doRun"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="439"
> >> method="runSync"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.server.WSEndpointImpl$2"
> >> file="WSEndpointImpl.java" line="243" method="process"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
> >> file="HttpAdapter.java" line="444" method="handle"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.transport.http.HttpAdapter"
> >> file="HttpAdapter.java" line="244" method="handle"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> >> file="WSHttpHandler.java" line="106" method="handleExchange"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> >> file="WSHttpHandler.java" line="91" method="handle"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
> >> method="doFilter"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="sun.net.httpserver.AuthFilter" file="AuthFilter.java" line="65"
> >> method="doFilter"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="68"
> >> method="doFilter"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
> >> file="ServerImpl.java" line="555" method="handle"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
> >> method="doFilter"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
> >> line="527" method="run"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> >> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
> >> 
> >>                             <ns2:frame
> >> 
> >> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> >> file="ThreadPoolExecutor.java" line="908" method="run"/>
> >> 
> >>                             <ns2:frame class="java.lang.Thread"
> >> 
> >> file="Thread.java" line="619" method="run"/>
> >> 
> >>                         </ns2:stackTrace>
> >>                     
> >>                     </ns2:cause>
> >>                 
> >>                 </ns2:exception>
> >>             
> >>             </detail>
> >>         
> >>         </ns2:Fault>
> >>     
> >>     </S:Body>
> >> 
> >> </S:Envelope>
> >> 
> >> dkulp wrote:
> >> > Per spec, the "faultstring" should be the result of
> >> > exception.getMessage().
> >> > Thus, we output whatever that returns.   Is there any way you can look
> >> 
> >> at
> >> 
> >> > the
> >> > sun generated exceptions or something to see if they are doing
> >> 
> >> something
> >> 
> >> > funky
> >> > with the getMessage() call?
> >> > 
> >> > Is the sample below from the CXF test or the Sun test?
> >> > 
> >> > Dan
> >> > 
> >> > On Fri February 12 2010 5:26:51 pm kiffin wrote:
> >> >> I have another question on soap fault. I could see the root cause
> >> >> returning
> >> >> from the soap fault from my Sun JAX-WS service,  but I am not seeing
> >> 
> >> it
> >> 
> >> >> in
> >> >> the CXF implementation. Is there a way for CXF to return the root
> >> 
> >> cause
> >> 
> >> >> of
> >> >> the soap fault to a client?  Here's the example response from my
> >> >> test.
> >> >> 
> >> >> <soap:Envelope
> >> >> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
> >> >> 
> >> >>     <soap:Header/>
> >> >>     <soap:Body>
> >> >>     
> >> >>         <soap:Fault>
> >> >>         
> >> >>             <faultcode>
> >> >>             
> >> >>                 soap:Server
> >> >>             
> >> >>             </faultcode>
> >> >>             <faultstring>
> >> >>             
> >> >>                 java.lang.RuntimeException: Mock up exception
> >> >>             
> >> >>             </faultstring>
> >> >>             <detail>
> >> >>             
> >> >>                 <ns1:ServiceException
> >> >> 
> >> >> xmlns:ns1="urn:expd.com:service:calculation"/>
> >> >> 
> >> >>             </detail>
> >> >>         
> >> >>         </soap:Fault>
> >> >>     
> >> >>     </soap:Body>
> >> >> 
> >> >> </soap:Envelope>
> >> >> 
> >> >> Thanks,
> >> >> Kiffin
> >> >> 
> >> >> dkulp wrote:
> >> >> > On Fri February 12 2010 3:06:52 pm kiffin wrote:
> >> >> >> Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system
> >> >> 
> >> >> property
> >> >> 
> >> >> >> - com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum -
> >> 
> >> which
> >> 
> >> >> >> dumps the request/response message on the console. Does CXF have
> >> >> >> an equivalent property to dump the request/response message on
> >> >> >> the console?
> >> >> > 
> >> >> > OK.  Didn't know about that specific property.   Sun seems to have
> >> >> > several properties like that which CXF would respond to, but that
> >> 
> >> one
> >> 
> >> >> > isn't one. I'll add it.
> >> >> > 
> >> >> > With 2.2.6, you can chose one of:
> >> >> > 
> >> >> > Boolean.getBoolean("org.apache.cxf.logging.enabled");
> >> 
> >> Boolean.getBoolean("com.sun.xml.ws.transport.local.LocalTransportPipe.du
> >> 
> >> >> m
> >> >> 
> >> >> > p");
> >> 
> >> Boolean.getBoolean("com.sun.xml.ws.util.pipe.StandaloneTubeAssembler.dum
> >> 
> >> >> > p");
> >> 
> >> Boolean.getBoolean("com.sun.xml.ws.transport.http.HttpAdapter.dump");
> >> 
> >> >> > It wouldn't go to the console.  It would go the java.util.logging,
> >> 
> >> but
> >> 
> >> >> by
> >> >> 
> >> >> > default, that would go to the console.

-- 
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog

Re: com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Posted by kiffin <ki...@yahoo.com>.
Dan,

I am using the Endpoint class in my unit test. Could I call the
setProperties method with this property?

Thanks,
Kiffin


dkulp wrote:
> 
> 
> You can give this a try, but a caveat in that I've never tried this so I
> don't 
> know what the resulting soap message looks like:
> 
> If you set a property on the endpoint like:
> <jaxws:properties>
>     <entry key="faultStackTraceEnabled" value="true" />
> </jaxws:properties>
> 
> the the SOAP out interceptors will stick a stack trace into the fault.  
> Not 
> exactly sure what that ends up looking like.
> 
> Dan
> 
> 
> 
> On Fri February 12 2010 5:58:05 pm kiffin wrote:
>> That response message was from running a test using the CXF stack. The
>> message below is from the Sun stack running the same test. We need to do
>> some post-processing on service exception and need to know the root cause
>> of that exception.
>> 
>> Thanks,
>> Kiffin
>> 
>> <?xml version="1.0" standalone="no"?>
>> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
>>     <S:Body>
>>         <ns2:Fault xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/"
>> xmlns:ns3="http://www.w3.org/2003/05/soap-envelope">
>>             <faultcode>
>>                 ns2:Server
>>             </faultcode>
>>             <faultstring>
>>                 java.lang.RuntimeException: Mock up exception
>>             </faultstring>
>>             <detail>
>>                 <ns2:exception xmlns:ns2="http://jax-ws.dev.java.net/"
>> class="com.expd.arch.service.ServiceException" note="To disable this
>> feature, set
>> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace
>> system property to false">
>>                     <message>
>>                         java.lang.RuntimeException: Mock up exception
>>                     </message>
>>                     <ns2:stackTrace>
>>                         <ns2:frame
>> class="com.expd.arch.service.ServiceException"
>> file="ServiceException.java"
>> line="101" method="wrap"/>
>>                         <ns2:frame
>> class="com.expd.service.calculation.impl.CalculationService"
>> file="CalculationService.java" line="134"
>> method="throwExceptionInMethod"/>
>>                         <ns2:frame
>> class="sun.reflect.NativeMethodAccessorImpl"
>> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
>>                         <ns2:frame
>> class="sun.reflect.NativeMethodAccessorImpl"
>> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
>>                         <ns2:frame
>> class="sun.reflect.DelegatingMethodAccessorImpl"
>> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
>>                         <ns2:frame class="java.lang.reflect.Method"
>> file="Method.java" line="597" method="invoke"/>
>>                         <ns2:frame
>> class="com.sun.xml.ws.api.server.InstanceResolver$1"
>> file="InstanceResolver.java" line="246" method="invoke"/>
>>                         <ns2:frame
>> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
>> line="146" method="invoke"/>
>>                         <ns2:frame
>> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
>> file="EndpointMethodHandler.java" line="257" method="invoke"/>
>>                         <ns2:frame
>> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
>> file="SEIInvokerTube.java"
>> line="93" method="processRequest"/>
>>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
>> file="Fiber.java" line="598" method="__doRun"/>
>>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
>> file="Fiber.java" line="557" method="_doRun"/>
>>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
>> file="Fiber.java" line="542" method="doRun"/>
>>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
>> file="Fiber.java" line="439" method="runSync"/>
>>                         <ns2:frame
>> class="com.sun.xml.ws.server.WSEndpointImpl$2" file="WSEndpointImpl.java"
>> line="243" method="process"/>
>>                         <ns2:frame
>> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
>> file="HttpAdapter.java" line="444" method="handle"/>
>>                         <ns2:frame
>> class="com.sun.xml.ws.transport.http.HttpAdapter" file="HttpAdapter.java"
>> line="244" method="handle"/>
>>                         <ns2:frame
>> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> file="WSHttpHandler.java" line="106" method="handleExchange"/>
>>                         <ns2:frame
>> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> file="WSHttpHandler.java" line="91" method="handle"/>
>>                         <ns2:frame
>> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
>> method="doFilter"/>
>>                         <ns2:frame class="sun.net.httpserver.AuthFilter"
>> file="AuthFilter.java" line="65" method="doFilter"/>
>>                         <ns2:frame
>> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="68"
>> method="doFilter"/>
>>                         <ns2:frame
>> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
>> file="ServerImpl.java" line="555" method="handle"/>
>>                         <ns2:frame
>> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
>> method="doFilter"/>
>>                         <ns2:frame
>> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
>> line="527" method="run"/>
>>                         <ns2:frame
>> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
>>                         <ns2:frame
>> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> file="ThreadPoolExecutor.java" line="908" method="run"/>
>>                         <ns2:frame class="java.lang.Thread"
>> file="Thread.java" line="619" method="run"/>
>>                     </ns2:stackTrace>
>>                     <ns2:cause class="java.lang.RuntimeException"
>> note="To
>> disable this feature, set
>> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system
>> property to false">
>>                         <message>
>>                             Mock up exception
>>                         </message>
>>                         <ns2:stackTrace>
>>                             <ns2:frame
>> class="com.expd.service.calculation.impl.CalculationService"
>> file="CalculationService.java" line="126"
>> method="throwRuntimeException"/>
>>                             <ns2:frame
>> class="com.expd.service.calculation.impl.CalculationService"
>> file="CalculationService.java" line="132"
>> method="throwExceptionInMethod"/>
>>                             <ns2:frame
>> class="sun.reflect.NativeMethodAccessorImpl"
>> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
>>                             <ns2:frame
>> class="sun.reflect.NativeMethodAccessorImpl"
>> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
>>                             <ns2:frame
>> class="sun.reflect.DelegatingMethodAccessorImpl"
>> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
>>                             <ns2:frame class="java.lang.reflect.Method"
>> file="Method.java" line="597" method="invoke"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.api.server.InstanceResolver$1"
>> file="InstanceResolver.java" line="246" method="invoke"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
>> line="146" method="invoke"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
>> file="EndpointMethodHandler.java" line="257" method="invoke"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.server.sei.SEIInvokerTube"
>> file="SEIInvokerTube.java"
>> line="93" method="processRequest"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="598"
>> method="__doRun"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="557"
>> method="_doRun"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="542"
>> method="doRun"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="439"
>> method="runSync"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.server.WSEndpointImpl$2" file="WSEndpointImpl.java"
>> line="243" method="process"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
>> file="HttpAdapter.java" line="444" method="handle"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.transport.http.HttpAdapter" file="HttpAdapter.java"
>> line="244" method="handle"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> file="WSHttpHandler.java" line="106" method="handleExchange"/>
>>                             <ns2:frame
>> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
>> file="WSHttpHandler.java" line="91" method="handle"/>
>>                             <ns2:frame
>> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
>> method="doFilter"/>
>>                             <ns2:frame
>> class="sun.net.httpserver.AuthFilter" file="AuthFilter.java" line="65"
>> method="doFilter"/>
>>                             <ns2:frame
>> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="68"
>> method="doFilter"/>
>>                             <ns2:frame
>> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
>> file="ServerImpl.java" line="555" method="handle"/>
>>                             <ns2:frame
>> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
>> method="doFilter"/>
>>                             <ns2:frame
>> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
>> line="527" method="run"/>
>>                             <ns2:frame
>> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
>>                             <ns2:frame
>> class="java.util.concurrent.ThreadPoolExecutor$Worker"
>> file="ThreadPoolExecutor.java" line="908" method="run"/>
>>                             <ns2:frame class="java.lang.Thread"
>> file="Thread.java" line="619" method="run"/>
>>                         </ns2:stackTrace>
>>                     </ns2:cause>
>>                 </ns2:exception>
>>             </detail>
>>         </ns2:Fault>
>>     </S:Body>
>> </S:Envelope>
>> 
>> dkulp wrote:
>> > Per spec, the "faultstring" should be the result of
>> > exception.getMessage().
>> > Thus, we output whatever that returns.   Is there any way you can look
>> at
>> > the
>> > sun generated exceptions or something to see if they are doing
>> something
>> > funky
>> > with the getMessage() call?
>> > 
>> > Is the sample below from the CXF test or the Sun test?
>> > 
>> > Dan
>> > 
>> > On Fri February 12 2010 5:26:51 pm kiffin wrote:
>> >> I have another question on soap fault. I could see the root cause
>> >> returning
>> >> from the soap fault from my Sun JAX-WS service,  but I am not seeing
>> it
>> >> in
>> >> the CXF implementation. Is there a way for CXF to return the root
>> cause
>> >> of
>> >> the soap fault to a client?  Here's the example response from my test.
>> >> 
>> >> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>> >> 
>> >>     <soap:Header/>
>> >>     <soap:Body>
>> >>     
>> >>         <soap:Fault>
>> >>         
>> >>             <faultcode>
>> >>             
>> >>                 soap:Server
>> >>             
>> >>             </faultcode>
>> >>             <faultstring>
>> >>             
>> >>                 java.lang.RuntimeException: Mock up exception
>> >>             
>> >>             </faultstring>
>> >>             <detail>
>> >>             
>> >>                 <ns1:ServiceException
>> >> 
>> >> xmlns:ns1="urn:expd.com:service:calculation"/>
>> >> 
>> >>             </detail>
>> >>         
>> >>         </soap:Fault>
>> >>     
>> >>     </soap:Body>
>> >> 
>> >> </soap:Envelope>
>> >> 
>> >> Thanks,
>> >> Kiffin
>> >> 
>> >> dkulp wrote:
>> >> > On Fri February 12 2010 3:06:52 pm kiffin wrote:
>> >> >> Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system
>> >> 
>> >> property
>> >> 
>> >> >> - com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum -
>> which
>> >> >> dumps the request/response message on the console. Does CXF have an
>> >> >> equivalent property to dump the request/response message on the
>> >> >> console?
>> >> > 
>> >> > OK.  Didn't know about that specific property.   Sun seems to have
>> >> > several properties like that which CXF would respond to, but that
>> one
>> >> > isn't one. I'll add it.
>> >> > 
>> >> > With 2.2.6, you can chose one of:
>> >> > 
>> >> > Boolean.getBoolean("org.apache.cxf.logging.enabled");
>> >> 
>> >>
>> Boolean.getBoolean("com.sun.xml.ws.transport.local.LocalTransportPipe.du
>> >> m
>> >> 
>> >> > p");
>> >> 
>> >>
>> Boolean.getBoolean("com.sun.xml.ws.util.pipe.StandaloneTubeAssembler.dum
>> >> 
>> >> > p");
>> >> >
>> Boolean.getBoolean("com.sun.xml.ws.transport.http.HttpAdapter.dump");
>> >> > 
>> >> > It wouldn't go to the console.  It would go the java.util.logging,
>> but
>> >> 
>> >> by
>> >> 
>> >> > default, that would go to the console.
> 
> -- 
> Daniel Kulp
> dkulp@apache.org
> http://www.dankulp.com/blog
> 
> 

-- 
View this message in context: http://old.nabble.com/com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump-tp27568694p27612362.html
Sent from the cxf-user mailing list archive at Nabble.com.


Re: com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Posted by Daniel Kulp <dk...@apache.org>.
You can give this a try, but a caveat in that I've never tried this so I don't 
know what the resulting soap message looks like:

If you set a property on the endpoint like:
<jaxws:properties>
    <entry key="faultStackTraceEnabled" value="true" />
</jaxws:properties>

the the SOAP out interceptors will stick a stack trace into the fault.   Not 
exactly sure what that ends up looking like.

Dan



On Fri February 12 2010 5:58:05 pm kiffin wrote:
> That response message was from running a test using the CXF stack. The
> message below is from the Sun stack running the same test. We need to do
> some post-processing on service exception and need to know the root cause
> of that exception.
> 
> Thanks,
> Kiffin
> 
> <?xml version="1.0" standalone="no"?>
> <S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
>     <S:Body>
>         <ns2:Fault xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:ns3="http://www.w3.org/2003/05/soap-envelope">
>             <faultcode>
>                 ns2:Server
>             </faultcode>
>             <faultstring>
>                 java.lang.RuntimeException: Mock up exception
>             </faultstring>
>             <detail>
>                 <ns2:exception xmlns:ns2="http://jax-ws.dev.java.net/"
> class="com.expd.arch.service.ServiceException" note="To disable this
> feature, set com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace
> system property to false">
>                     <message>
>                         java.lang.RuntimeException: Mock up exception
>                     </message>
>                     <ns2:stackTrace>
>                         <ns2:frame
> class="com.expd.arch.service.ServiceException" file="ServiceException.java"
> line="101" method="wrap"/>
>                         <ns2:frame
> class="com.expd.service.calculation.impl.CalculationService"
> file="CalculationService.java" line="134" method="throwExceptionInMethod"/>
>                         <ns2:frame
> class="sun.reflect.NativeMethodAccessorImpl"
> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
>                         <ns2:frame
> class="sun.reflect.NativeMethodAccessorImpl"
> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
>                         <ns2:frame
> class="sun.reflect.DelegatingMethodAccessorImpl"
> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
>                         <ns2:frame class="java.lang.reflect.Method"
> file="Method.java" line="597" method="invoke"/>
>                         <ns2:frame
> class="com.sun.xml.ws.api.server.InstanceResolver$1"
> file="InstanceResolver.java" line="246" method="invoke"/>
>                         <ns2:frame
> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
> line="146" method="invoke"/>
>                         <ns2:frame
> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
> file="EndpointMethodHandler.java" line="257" method="invoke"/>
>                         <ns2:frame
> class="com.sun.xml.ws.server.sei.SEIInvokerTube" file="SEIInvokerTube.java"
> line="93" method="processRequest"/>
>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
> file="Fiber.java" line="598" method="__doRun"/>
>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
> file="Fiber.java" line="557" method="_doRun"/>
>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
> file="Fiber.java" line="542" method="doRun"/>
>                         <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
> file="Fiber.java" line="439" method="runSync"/>
>                         <ns2:frame
> class="com.sun.xml.ws.server.WSEndpointImpl$2" file="WSEndpointImpl.java"
> line="243" method="process"/>
>                         <ns2:frame
> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
> file="HttpAdapter.java" line="444" method="handle"/>
>                         <ns2:frame
> class="com.sun.xml.ws.transport.http.HttpAdapter" file="HttpAdapter.java"
> line="244" method="handle"/>
>                         <ns2:frame
> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> file="WSHttpHandler.java" line="106" method="handleExchange"/>
>                         <ns2:frame
> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> file="WSHttpHandler.java" line="91" method="handle"/>
>                         <ns2:frame
> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
> method="doFilter"/>
>                         <ns2:frame class="sun.net.httpserver.AuthFilter"
> file="AuthFilter.java" line="65" method="doFilter"/>
>                         <ns2:frame
> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="68"
> method="doFilter"/>
>                         <ns2:frame
> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
> file="ServerImpl.java" line="555" method="handle"/>
>                         <ns2:frame
> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
> method="doFilter"/>
>                         <ns2:frame
> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
> line="527" method="run"/>
>                         <ns2:frame
> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
>                         <ns2:frame
> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> file="ThreadPoolExecutor.java" line="908" method="run"/>
>                         <ns2:frame class="java.lang.Thread"
> file="Thread.java" line="619" method="run"/>
>                     </ns2:stackTrace>
>                     <ns2:cause class="java.lang.RuntimeException" note="To
> disable this feature, set
> com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system
> property to false">
>                         <message>
>                             Mock up exception
>                         </message>
>                         <ns2:stackTrace>
>                             <ns2:frame
> class="com.expd.service.calculation.impl.CalculationService"
> file="CalculationService.java" line="126" method="throwRuntimeException"/>
>                             <ns2:frame
> class="com.expd.service.calculation.impl.CalculationService"
> file="CalculationService.java" line="132" method="throwExceptionInMethod"/>
>                             <ns2:frame
> class="sun.reflect.NativeMethodAccessorImpl"
> file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
>                             <ns2:frame
> class="sun.reflect.NativeMethodAccessorImpl"
> file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
>                             <ns2:frame
> class="sun.reflect.DelegatingMethodAccessorImpl"
> file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
>                             <ns2:frame class="java.lang.reflect.Method"
> file="Method.java" line="597" method="invoke"/>
>                             <ns2:frame
> class="com.sun.xml.ws.api.server.InstanceResolver$1"
> file="InstanceResolver.java" line="246" method="invoke"/>
>                             <ns2:frame
> class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
> line="146" method="invoke"/>
>                             <ns2:frame
> class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
> file="EndpointMethodHandler.java" line="257" method="invoke"/>
>                             <ns2:frame
> class="com.sun.xml.ws.server.sei.SEIInvokerTube" file="SEIInvokerTube.java"
> line="93" method="processRequest"/>
>                             <ns2:frame
> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="598"
> method="__doRun"/>
>                             <ns2:frame
> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="557"
> method="_doRun"/>
>                             <ns2:frame
> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="542"
> method="doRun"/>
>                             <ns2:frame
> class="com.sun.xml.ws.api.pipe.Fiber" file="Fiber.java" line="439"
> method="runSync"/>
>                             <ns2:frame
> class="com.sun.xml.ws.server.WSEndpointImpl$2" file="WSEndpointImpl.java"
> line="243" method="process"/>
>                             <ns2:frame
> class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
> file="HttpAdapter.java" line="444" method="handle"/>
>                             <ns2:frame
> class="com.sun.xml.ws.transport.http.HttpAdapter" file="HttpAdapter.java"
> line="244" method="handle"/>
>                             <ns2:frame
> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> file="WSHttpHandler.java" line="106" method="handleExchange"/>
>                             <ns2:frame
> class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
> file="WSHttpHandler.java" line="91" method="handle"/>
>                             <ns2:frame
> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
> method="doFilter"/>
>                             <ns2:frame
> class="sun.net.httpserver.AuthFilter" file="AuthFilter.java" line="65"
> method="doFilter"/>
>                             <ns2:frame
> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="68"
> method="doFilter"/>
>                             <ns2:frame
> class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
> file="ServerImpl.java" line="555" method="handle"/>
>                             <ns2:frame
> class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
> method="doFilter"/>
>                             <ns2:frame
> class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
> line="527" method="run"/>
>                             <ns2:frame
> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> file="ThreadPoolExecutor.java" line="886" method="runTask"/>
>                             <ns2:frame
> class="java.util.concurrent.ThreadPoolExecutor$Worker"
> file="ThreadPoolExecutor.java" line="908" method="run"/>
>                             <ns2:frame class="java.lang.Thread"
> file="Thread.java" line="619" method="run"/>
>                         </ns2:stackTrace>
>                     </ns2:cause>
>                 </ns2:exception>
>             </detail>
>         </ns2:Fault>
>     </S:Body>
> </S:Envelope>
> 
> dkulp wrote:
> > Per spec, the "faultstring" should be the result of
> > exception.getMessage().
> > Thus, we output whatever that returns.   Is there any way you can look at
> > the
> > sun generated exceptions or something to see if they are doing something
> > funky
> > with the getMessage() call?
> > 
> > Is the sample below from the CXF test or the Sun test?
> > 
> > Dan
> > 
> > On Fri February 12 2010 5:26:51 pm kiffin wrote:
> >> I have another question on soap fault. I could see the root cause
> >> returning
> >> from the soap fault from my Sun JAX-WS service,  but I am not seeing it
> >> in
> >> the CXF implementation. Is there a way for CXF to return the root cause
> >> of
> >> the soap fault to a client?  Here's the example response from my test.
> >> 
> >> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
> >> 
> >>     <soap:Header/>
> >>     <soap:Body>
> >>     
> >>         <soap:Fault>
> >>         
> >>             <faultcode>
> >>             
> >>                 soap:Server
> >>             
> >>             </faultcode>
> >>             <faultstring>
> >>             
> >>                 java.lang.RuntimeException: Mock up exception
> >>             
> >>             </faultstring>
> >>             <detail>
> >>             
> >>                 <ns1:ServiceException
> >> 
> >> xmlns:ns1="urn:expd.com:service:calculation"/>
> >> 
> >>             </detail>
> >>         
> >>         </soap:Fault>
> >>     
> >>     </soap:Body>
> >> 
> >> </soap:Envelope>
> >> 
> >> Thanks,
> >> Kiffin
> >> 
> >> dkulp wrote:
> >> > On Fri February 12 2010 3:06:52 pm kiffin wrote:
> >> >> Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system
> >> 
> >> property
> >> 
> >> >> - com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum - which
> >> >> dumps the request/response message on the console. Does CXF have an
> >> >> equivalent property to dump the request/response message on the
> >> >> console?
> >> > 
> >> > OK.  Didn't know about that specific property.   Sun seems to have
> >> > several properties like that which CXF would respond to, but that one
> >> > isn't one. I'll add it.
> >> > 
> >> > With 2.2.6, you can chose one of:
> >> > 
> >> > Boolean.getBoolean("org.apache.cxf.logging.enabled");
> >> 
> >> Boolean.getBoolean("com.sun.xml.ws.transport.local.LocalTransportPipe.du
> >> m
> >> 
> >> > p");
> >> 
> >> Boolean.getBoolean("com.sun.xml.ws.util.pipe.StandaloneTubeAssembler.dum
> >> 
> >> > p");
> >> > Boolean.getBoolean("com.sun.xml.ws.transport.http.HttpAdapter.dump");
> >> > 
> >> > It wouldn't go to the console.  It would go the java.util.logging, but
> >> 
> >> by
> >> 
> >> > default, that would go to the console.

-- 
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog

Re: com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Posted by kiffin <ki...@yahoo.com>.
That response message was from running a test using the CXF stack. The
message below is from the Sun stack running the same test. We need to do
some post-processing on service exception and need to know the root cause of
that exception.

Thanks,
Kiffin

<?xml version="1.0" standalone="no"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Body>
        <ns2:Fault xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns3="http://www.w3.org/2003/05/soap-envelope">
            <faultcode>
                ns2:Server
            </faultcode>
            <faultstring>
                java.lang.RuntimeException: Mock up exception
            </faultstring>
            <detail>
                <ns2:exception xmlns:ns2="http://jax-ws.dev.java.net/"
class="com.expd.arch.service.ServiceException" note="To disable this
feature, set com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace
system property to false">
                    <message>
                        java.lang.RuntimeException: Mock up exception
                    </message>
                    <ns2:stackTrace>
                        <ns2:frame
class="com.expd.arch.service.ServiceException" file="ServiceException.java"
line="101" method="wrap"/>
                        <ns2:frame
class="com.expd.service.calculation.impl.CalculationService"
file="CalculationService.java" line="134" method="throwExceptionInMethod"/>
                        <ns2:frame
class="sun.reflect.NativeMethodAccessorImpl"
file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
                        <ns2:frame
class="sun.reflect.NativeMethodAccessorImpl"
file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
                        <ns2:frame
class="sun.reflect.DelegatingMethodAccessorImpl"
file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
                        <ns2:frame class="java.lang.reflect.Method"
file="Method.java" line="597" method="invoke"/>
                        <ns2:frame
class="com.sun.xml.ws.api.server.InstanceResolver$1"
file="InstanceResolver.java" line="246" method="invoke"/>
                        <ns2:frame
class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
line="146" method="invoke"/>
                        <ns2:frame
class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
file="EndpointMethodHandler.java" line="257" method="invoke"/>
                        <ns2:frame
class="com.sun.xml.ws.server.sei.SEIInvokerTube" file="SEIInvokerTube.java"
line="93" method="processRequest"/>
                        <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
file="Fiber.java" line="598" method="__doRun"/>
                        <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
file="Fiber.java" line="557" method="_doRun"/>
                        <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
file="Fiber.java" line="542" method="doRun"/>
                        <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
file="Fiber.java" line="439" method="runSync"/>
                        <ns2:frame
class="com.sun.xml.ws.server.WSEndpointImpl$2" file="WSEndpointImpl.java"
line="243" method="process"/>
                        <ns2:frame
class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
file="HttpAdapter.java" line="444" method="handle"/>
                        <ns2:frame
class="com.sun.xml.ws.transport.http.HttpAdapter" file="HttpAdapter.java"
line="244" method="handle"/>
                        <ns2:frame
class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
file="WSHttpHandler.java" line="106" method="handleExchange"/>
                        <ns2:frame
class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
file="WSHttpHandler.java" line="91" method="handle"/>
                        <ns2:frame
class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
method="doFilter"/>
                        <ns2:frame class="sun.net.httpserver.AuthFilter"
file="AuthFilter.java" line="65" method="doFilter"/>
                        <ns2:frame
class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="68"
method="doFilter"/>
                        <ns2:frame
class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
file="ServerImpl.java" line="555" method="handle"/>
                        <ns2:frame
class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
method="doFilter"/>
                        <ns2:frame
class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
line="527" method="run"/>
                        <ns2:frame
class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="886" method="runTask"/>
                        <ns2:frame
class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="908" method="run"/>
                        <ns2:frame class="java.lang.Thread"
file="Thread.java" line="619" method="run"/>
                    </ns2:stackTrace>
                    <ns2:cause class="java.lang.RuntimeException" note="To
disable this feature, set
com.sun.xml.ws.fault.SOAPFaultBuilder.disableCaptureStackTrace system
property to false">
                        <message>
                            Mock up exception
                        </message>
                        <ns2:stackTrace>
                            <ns2:frame
class="com.expd.service.calculation.impl.CalculationService"
file="CalculationService.java" line="126" method="throwRuntimeException"/>
                            <ns2:frame
class="com.expd.service.calculation.impl.CalculationService"
file="CalculationService.java" line="132" method="throwExceptionInMethod"/>
                            <ns2:frame
class="sun.reflect.NativeMethodAccessorImpl"
file="NativeMethodAccessorImpl.java" line="native" method="invoke0"/>
                            <ns2:frame
class="sun.reflect.NativeMethodAccessorImpl"
file="NativeMethodAccessorImpl.java" line="39" method="invoke"/>
                            <ns2:frame
class="sun.reflect.DelegatingMethodAccessorImpl"
file="DelegatingMethodAccessorImpl.java" line="25" method="invoke"/>
                            <ns2:frame class="java.lang.reflect.Method"
file="Method.java" line="597" method="invoke"/>
                            <ns2:frame
class="com.sun.xml.ws.api.server.InstanceResolver$1"
file="InstanceResolver.java" line="246" method="invoke"/>
                            <ns2:frame
class="com.sun.xml.ws.server.InvokerTube$2" file="InvokerTube.java"
line="146" method="invoke"/>
                            <ns2:frame
class="com.sun.xml.ws.server.sei.EndpointMethodHandler"
file="EndpointMethodHandler.java" line="257" method="invoke"/>
                            <ns2:frame
class="com.sun.xml.ws.server.sei.SEIInvokerTube" file="SEIInvokerTube.java"
line="93" method="processRequest"/>
                            <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
file="Fiber.java" line="598" method="__doRun"/>
                            <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
file="Fiber.java" line="557" method="_doRun"/>
                            <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
file="Fiber.java" line="542" method="doRun"/>
                            <ns2:frame class="com.sun.xml.ws.api.pipe.Fiber"
file="Fiber.java" line="439" method="runSync"/>
                            <ns2:frame
class="com.sun.xml.ws.server.WSEndpointImpl$2" file="WSEndpointImpl.java"
line="243" method="process"/>
                            <ns2:frame
class="com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit"
file="HttpAdapter.java" line="444" method="handle"/>
                            <ns2:frame
class="com.sun.xml.ws.transport.http.HttpAdapter" file="HttpAdapter.java"
line="244" method="handle"/>
                            <ns2:frame
class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
file="WSHttpHandler.java" line="106" method="handleExchange"/>
                            <ns2:frame
class="com.sun.xml.ws.transport.http.server.WSHttpHandler"
file="WSHttpHandler.java" line="91" method="handle"/>
                            <ns2:frame
class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
method="doFilter"/>
                            <ns2:frame class="sun.net.httpserver.AuthFilter"
file="AuthFilter.java" line="65" method="doFilter"/>
                            <ns2:frame
class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="68"
method="doFilter"/>
                            <ns2:frame
class="sun.net.httpserver.ServerImpl$Exchange$LinkHandler"
file="ServerImpl.java" line="555" method="handle"/>
                            <ns2:frame
class="com.sun.net.httpserver.Filter$Chain" file="Filter.java" line="65"
method="doFilter"/>
                            <ns2:frame
class="sun.net.httpserver.ServerImpl$Exchange" file="ServerImpl.java"
line="527" method="run"/>
                            <ns2:frame
class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="886" method="runTask"/>
                            <ns2:frame
class="java.util.concurrent.ThreadPoolExecutor$Worker"
file="ThreadPoolExecutor.java" line="908" method="run"/>
                            <ns2:frame class="java.lang.Thread"
file="Thread.java" line="619" method="run"/>
                        </ns2:stackTrace>
                    </ns2:cause>
                </ns2:exception>
            </detail>
        </ns2:Fault>
    </S:Body>
</S:Envelope>




dkulp wrote:
> 
> 
> Per spec, the "faultstring" should be the result of
> exception.getMessage().   
> Thus, we output whatever that returns.   Is there any way you can look at
> the 
> sun generated exceptions or something to see if they are doing something
> funky 
> with the getMessage() call?    
> 
> Is the sample below from the CXF test or the Sun test?
> 
> Dan
> 
> 
> On Fri February 12 2010 5:26:51 pm kiffin wrote:
>> I have another question on soap fault. I could see the root cause
>> returning
>> from the soap fault from my Sun JAX-WS service,  but I am not seeing it
>> in
>> the CXF implementation. Is there a way for CXF to return the root cause
>> of
>> the soap fault to a client?  Here's the example response from my test.
>> 
>> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>>     <soap:Header/>
>>     <soap:Body>
>>         <soap:Fault>
>>             <faultcode>
>>                 soap:Server
>>             </faultcode>
>>             <faultstring>
>>                 java.lang.RuntimeException: Mock up exception
>>             </faultstring>
>>             <detail>
>>                 <ns1:ServiceException
>> xmlns:ns1="urn:expd.com:service:calculation"/>
>>             </detail>
>>         </soap:Fault>
>>     </soap:Body>
>> </soap:Envelope>
>> 
>> Thanks,
>> Kiffin
>> 
>> dkulp wrote:
>> > On Fri February 12 2010 3:06:52 pm kiffin wrote:
>> >> Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system
>> property
>> >> - com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum - which
>> >> dumps the request/response message on the console. Does CXF have an
>> >> equivalent property to dump the request/response message on the
>> >> console?
>> > 
>> > OK.  Didn't know about that specific property.   Sun seems to have
>> > several properties like that which CXF would respond to, but that one
>> > isn't one. I'll add it.
>> > 
>> > With 2.2.6, you can chose one of:
>> > 
>> > Boolean.getBoolean("org.apache.cxf.logging.enabled");
>> >
>> Boolean.getBoolean("com.sun.xml.ws.transport.local.LocalTransportPipe.dum
>> > p");
>> >
>> Boolean.getBoolean("com.sun.xml.ws.util.pipe.StandaloneTubeAssembler.dum
>> > p");
>> > Boolean.getBoolean("com.sun.xml.ws.transport.http.HttpAdapter.dump");
>> > 
>> > It wouldn't go to the console.  It would go the java.util.logging, but
>> by
>> > default, that would go to the console.
> 
> -- 
> Daniel Kulp
> dkulp@apache.org
> http://www.dankulp.com/blog
> 
> 

-- 
View this message in context: http://old.nabble.com/com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump-tp27568694p27570542.html
Sent from the cxf-user mailing list archive at Nabble.com.


Re: com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Posted by Daniel Kulp <dk...@apache.org>.
Per spec, the "faultstring" should be the result of exception.getMessage().   
Thus, we output whatever that returns.   Is there any way you can look at the 
sun generated exceptions or something to see if they are doing something funky 
with the getMessage() call?    

Is the sample below from the CXF test or the Sun test?

Dan


On Fri February 12 2010 5:26:51 pm kiffin wrote:
> I have another question on soap fault. I could see the root cause returning
> from the soap fault from my Sun JAX-WS service,  but I am not seeing it in
> the CXF implementation. Is there a way for CXF to return the root cause of
> the soap fault to a client?  Here's the example response from my test.
> 
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>     <soap:Header/>
>     <soap:Body>
>         <soap:Fault>
>             <faultcode>
>                 soap:Server
>             </faultcode>
>             <faultstring>
>                 java.lang.RuntimeException: Mock up exception
>             </faultstring>
>             <detail>
>                 <ns1:ServiceException
> xmlns:ns1="urn:expd.com:service:calculation"/>
>             </detail>
>         </soap:Fault>
>     </soap:Body>
> </soap:Envelope>
> 
> Thanks,
> Kiffin
> 
> dkulp wrote:
> > On Fri February 12 2010 3:06:52 pm kiffin wrote:
> >> Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system property
> >> - com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum - which
> >> dumps the request/response message on the console. Does CXF have an
> >> equivalent property to dump the request/response message on the
> >> console?
> > 
> > OK.  Didn't know about that specific property.   Sun seems to have
> > several properties like that which CXF would respond to, but that one
> > isn't one. I'll add it.
> > 
> > With 2.2.6, you can chose one of:
> > 
> > Boolean.getBoolean("org.apache.cxf.logging.enabled");
> > Boolean.getBoolean("com.sun.xml.ws.transport.local.LocalTransportPipe.dum
> > p");
> > Boolean.getBoolean("com.sun.xml.ws.util.pipe.StandaloneTubeAssembler.dum
> > p");
> > Boolean.getBoolean("com.sun.xml.ws.transport.http.HttpAdapter.dump");
> > 
> > It wouldn't go to the console.  It would go the java.util.logging, but by
> > default, that would go to the console.

-- 
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog

Re: com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Posted by kiffin <ki...@yahoo.com>.
I have another question on soap fault. I could see the root cause returning
from the soap fault from my Sun JAX-WS service,  but I am not seeing it in
the CXF implementation. Is there a way for CXF to return the root cause of
the soap fault to a client?  Here's the example response from my test.

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Header/>
    <soap:Body>
        <soap:Fault>
            <faultcode>
                soap:Server
            </faultcode>
            <faultstring>
                java.lang.RuntimeException: Mock up exception
            </faultstring>
            <detail>
                <ns1:ServiceException
xmlns:ns1="urn:expd.com:service:calculation"/>
            </detail>
        </soap:Fault>
    </soap:Body>
</soap:Envelope>

Thanks,
Kiffin



dkulp wrote:
> 
> On Fri February 12 2010 3:06:52 pm kiffin wrote:
>> Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system property -
>> com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum - which dumps
>> the request/response message on the console. Does CXF have an equivalent
>> property to dump the request/response message on the console?
> 
> OK.  Didn't know about that specific property.   Sun seems to have several 
> properties like that which CXF would respond to, but that one isn't one.   
> I'll add it.  
> 
> With 2.2.6, you can chose one of:
> 
> Boolean.getBoolean("org.apache.cxf.logging.enabled");
> Boolean.getBoolean("com.sun.xml.ws.transport.local.LocalTransportPipe.dump");
> Boolean.getBoolean("com.sun.xml.ws.util.pipe.StandaloneTubeAssembler.dump");
> Boolean.getBoolean("com.sun.xml.ws.transport.http.HttpAdapter.dump");
> 
> It wouldn't go to the console.  It would go the java.util.logging, but by 
> default, that would go to the console.
> 
> -- 
> Daniel Kulp
> dkulp@apache.org
> http://www.dankulp.com/blog
> 
> 

-- 
View this message in context: http://old.nabble.com/com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump-tp27568694p27570187.html
Sent from the cxf-user mailing list archive at Nabble.com.


Re: com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump

Posted by Daniel Kulp <dk...@apache.org>.
On Fri February 12 2010 3:06:52 pm kiffin wrote:
> Hi. I am porting a Sun JAX-WS service to CXF. Sun has a system property -
> com.sun.xml.ws.transport.http.client.HttpTransportPipe.dum - which dumps
> the request/response message on the console. Does CXF have an equivalent
> property to dump the request/response message on the console?

OK.  Didn't know about that specific property.   Sun seems to have several 
properties like that which CXF would respond to, but that one isn't one.   
I'll add it.  

With 2.2.6, you can chose one of:

Boolean.getBoolean("org.apache.cxf.logging.enabled");
Boolean.getBoolean("com.sun.xml.ws.transport.local.LocalTransportPipe.dump");
Boolean.getBoolean("com.sun.xml.ws.util.pipe.StandaloneTubeAssembler.dump");
Boolean.getBoolean("com.sun.xml.ws.transport.http.HttpAdapter.dump");

It wouldn't go to the console.  It would go the java.util.logging, but by 
default, that would go to the console.

-- 
Daniel Kulp
dkulp@apache.org
http://www.dankulp.com/blog