JaxWsProxyFactoryBean client = new JaxWsProxyFactoryBean();
        client.setServiceClass(TicketOrderService.class);
        client.setAddress("local://TicketOrderService");
        client.getInInterceptors().add(new LoggingInInterceptor());
        client.getOutInterceptors().add(new LoggingOutInterceptor());

        TicketOrderService ticket = (TicketOrderService) client.create();

        String ticketOrder = ticket.getTicket("1", "2", new Date(), "3");

On Thu, Sep 18, 2008 at 9:26 PM, Benson Margulies <[EMAIL PROTECTED]>wrote:

> So, now the question is: what is the client you are using that
> constructed this message?
>
> On Thu, Sep 18, 2008 at 11:53 AM, Alexey Zavizionov
> <[EMAIL PROTECTED]> wrote:
> > I have added logging interceptors for client:
> > ==========================================
> >        client.getInInterceptors().add(new LoggingInInterceptor());
> >        client.getOutInterceptors().add(new LoggingOutInterceptor());
> > ==========================================
> >
> > Result:
> > ==========================================
> > Sep 18, 2008 5:50:11 PM
> > org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose
> > INFO: Outbound Message
> > ---------------------------
> > Encoding: UTF-8
> > Headers: {SOAPAction=["urn:GetTicket"]}
> > Messages:
> > Payload: <soap:Envelope xmlns:soap="
> > http://schemas.xmlsoap.org/soap/envelope/";><soap:Header><ns2:departing
> > xmlns:ns2="http://exoplatform.org/soap/xfire
> ">1</ns2:departing><ns2:arriving
> > xmlns:ns2="http://exoplatform.org/soap/xfire
> ">2</ns2:arriving><ns2:departureDate
> > xmlns:ns2="http://exoplatform.org/soap/xfire
> ">2008-09-18T17:50:11.346+02:00</ns2:departureDate><ns2:passenger
> > xmlns:ns2="http://exoplatform.org/soap/xfire
> ">3</ns2:passenger></soap:Header><soap:Body><ns2:getTicket
> > xmlns:ns2="http://exoplatform.org/soap/xfire
> "/></soap:Body></soap:Envelope>
> > --------------------------------------
> > Sep 18, 2008 5:50:11 PM org.apache.cxf.phase.PhaseInterceptorChain
> > doIntercept
> > ...
> > here same stack trace...
> > ...
> > Sep 18, 2008 5:50:12 PM org.apache.cxf.interceptor.LoggingInInterceptor
> > logging
> > INFO: Inbound Message
> > ----------------------------
> > Encoding: UTF-8
> > Headers:
> > Messages:
> > Message:
> >
> > Payload: <soap:Envelope xmlns:soap="
> > http://schemas.xmlsoap.org/soap/envelope/
> >
> "><soap:Body><soap:Fault><faultcode>soap:Server</faultcode><faultstring></faultstring></soap:Fault></soap:Body></soap:Envelope>
> > --------------------------------------
> > ==========================================
> >
> > Regards,
> > Alexey.
> >
> > On Thu, Sep 18, 2008 at 6:16 PM, Benson Margulies <[EMAIL PROTECTED]
> >wrote:
> >
> >> You are going to have to turn on logging. The problem here is that the
> >> code is expecting the XML to contain a date in some format which it is
> >> not in. It looks to me as if it expects just an integer, and is
> >> finding 'something else'. google 'cxf logging' and find the
> >> information about how to add the logging interceptors to your service.
> >>
> >> On Thu, Sep 18, 2008 at 11:05 AM, Alexey Zavizionov
> >> <[EMAIL PROTECTED]> wrote:
> >> > Hello list,
> >> >
> >> > I have an exception when getting method with Date parameter:
> >> >        Date date = Calendar.getInstance().getTime();
> >> >        String ticketOrder = ticket.getTicket("1", "2", date, "3");
> >> >
> >> > ====================================================
> >> > Sep 18, 2008 4:44:21 PM org.apache.cxf.phase.PhaseInterceptorChain
> >> > doIntercept
> >> > INFO: Interceptor has thrown exception, unwinding now
> >> > org.apache.cxf.interceptor.Fault:
> >> >        at
> >> >
> >>
> org.apache.cxf.aegis.databinding.ElementDataReader.read(ElementDataReader.java:66)
> >> >        at
> >> >
> >>
> org.apache.cxf.aegis.databinding.ElementDataReader.read(ElementDataReader.java:39)
> >> >        at
> >> >
> >>
> org.apache.cxf.binding.soap.interceptor.SoapHeaderInterceptor.handleMessage(SoapHeaderInterceptor.java:101)
> >> >        at
> >> >
> >>
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> >> >        at
> >> >
> >>
> org.apache.cxf.transport.MultipleEndpointObserver.onMessage(MultipleEndpointObserver.java:86)
> >> >        at
> >> >
> >>
> org.apache.cxf.transport.local.LocalConduit$1$1.run(LocalConduit.java:132)
> >> >        at java.lang.Thread.run(Thread.java:595)
> >> > Caused by: java.lang.IllegalArgumentException:
> >> >        at
> >> >
> >>
> com.sun.org.apache.xerces.internal.jaxp.datatype.XMLGregorianCalendarImpl$Parser.parseBigInteger(XMLGregorianCalendarImpl.java:2854)
> >> >        at
> >> >
> >>
> com.sun.org.apache.xerces.internal.jaxp.datatype.XMLGregorianCalendarImpl$Parser.parse(XMLGregorianCalendarImpl.java:2747)
> >> >        at
> >> >
> >>
> com.sun.org.apache.xerces.internal.jaxp.datatype.XMLGregorianCalendarImpl.<init>(XMLGregorianCalendarImpl.java:440)
> >> >        at
> >> >
> >>
> com.sun.org.apache.xerces.internal.jaxp.datatype.DatatypeFactoryImpl.newXMLGregorianCalendar(DatatypeFactoryImpl.java:224)
> >> >        at
> >> >
> >>
> org.apache.cxf.aegis.util.date.XsDateTimeFormat.parseObject(XsDateTimeFormat.java:80)
> >> >        at java.text.Format.parseObject(Format.java:219)
> >> >        at
> >> >
> >>
> org.apache.cxf.aegis.type.basic.DateTimeType.readObject(DateTimeType.java:54)
> >> >        at
> >> >
> >>
> org.apache.cxf.aegis.AegisXMLStreamDataReader.read(AegisXMLStreamDataReader.java:82)
> >> >        at
> >> >
> >>
> org.apache.cxf.aegis.AegisElementDataReader.read(AegisElementDataReader.java:50)
> >> >        at
> >> >
> >>
> org.apache.cxf.aegis.databinding.ElementDataReader.read(ElementDataReader.java:64)
> >> >        ... 6 more
> >> > ====================================================
> >> >
> >> > Service's simple interface has the method code:
> >> > ====================================================
> >> >  @WebMethod(operationName = "getTicket", action = "urn:GetTicket")
> >> >  @WebResult(name = "Ticket")
> >> >  public String getTicket(@WebParam(name = "departing", header = true)
> >> > String departing,
> >> >      @WebParam(name = "arriving", header = true) String arriving,
> >> >      @WebParam(name = "departureDate", header = true) Date
> departureDate,
> >> >      @WebParam(name = "passenger", header = true) String passenger) ;
> >> > ====================================================
> >> >
> >> > Regards,
> >> > Alexey.
> >> >
> >>
> >
>

Reply via email to