Hello,

William Tam <[email protected]> schrieb am 13.12.2010 23:18:31:

> We do have an unit test for JAXWS handler in PAYLOAD mode.
> 
> https://svn.apache.org/repos/asf/camel/trunk/components/camel-
> 
cxf/src/test/java/org/apache/camel/component/cxf/CxfWsdlFirstPayloadModeTest.java
> 
> https://svn.apache.org/repos/asf/camel/trunk/components/camel-
> 
cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstBeansPayloadMode.xml

Sorry, next time I have to give a closer look at the unit tests.

Willem Jiang <[email protected]> schrieb am 14.12.2010 01:10:53:

> Hi,
> 
> It's looks you are using the simple front end which means there is no 
> @WebService annotation in your SEI.
> Current we don't support the JAXWS-handler in simple front end, please 
> make sure you are using the jaxws front end.

Does this mean that I have to provided the serviceClass attribute at the 
cxf:cxfEndpoint? Since the incoming SOAP-Message is not wellformed in some 
cases (e.g. timestamp format), the SOAP message should not be mapped to 
the JAXB classes directly (this is the reason, why I'm using data format 
PAYLOAD; I'm doing some message correction before JAXB unmarshaling is 
processed on my camel route) Is JAXB-unmarshaling skipt with data format 
PAYLOAD, even if I provide the serviceClass attribute? 

Thanks,
Thomas
 
> On 12/14/10 5:54 AM, Thomas KRIECHBAUM wrote:
> > Hello,
> >
> > how can I assign JAXWS-handlers to an CXF-endpoint using data format
> > PAYLOAD?
> >
> > The documentation
> > 
http://camel.apache.org/cxf.html#CXF-ConfiguretheCXFendpointswithSpring
> > suggests the child element cxf:handlers. But when starting the camel
> > context the following exception is thrown:
> >
> > ?
> > Caused by: org.springframework.beans.NotWritablePropertyException: 
Invalid
> > property 'handlers' of bean class
> > [org.apache.cxf.frontend.ServerFactoryBean]: Bean property 'handlers' 
is
> > not writable or has an invalid setter method. Does the parameter type 
of
> > the setter match the return type of the getter?
> > ?
> >
> > According to this (very clear) exception message, the class
> > ServerFactoryBean does not own the required property (the classes
> > JaxWsServerFactoryBean or SpringServerFactoryBean do own this 
property;
> > both are extending the class ServerFactoryBean).
> >
> > https://svn.apache.org/repos/asf/camel/trunk/components/camel-
> 
cxf/src/test/resources/org/apache/camel/component/cxf/WsdlFirstProcessor.xml
> > contains an appropriate cxf:handlers example. But in this example the
> > CXF-endpoint uses data format POJO.
> >
> > As a workaround I have implemented a SOAP-message-interceptor 
(extending
> > class AbstractPhaseInterceptor<SoapMessage>; registered for phase
> > Phase.USER_PROTOCOL). Within this interceptor I have access to all
> > SOAP-headers in form of DOM-elements.
> >
> > It would be a nice feature, if I could reuse an existing JAXWS-handler
> > even with data format PAYLOAD.
> >
> > Thanks,
> > Thomas
> >
> >
> >
> > Der Austausch von Nachrichten mit o.a. Absender via e-mail dient 
> ausschließlich Informationszwecken. Rechtsgeschäftliche Erklärungen 
> dürfen über dieses Medium nicht ausgetauscht werden.
> >
> > Correspondence with a.m. sender via e-mail is only for information 
> purposes. This medium is not to be used for the exchange of legally-
> binding communications.
> >
> 
> 
> -- 
> Willem
> ----------------------------------
> FuseSource
> Web: http://www.fusesource.com
> Blog:    http://willemjiang.blogspot.com (English)
>           http://jnn.javaeye.com (Chinese)
> Twitter: willemjiang




Der Austausch von Nachrichten mit o.a. Absender via e-mail dient ausschließlich 
Informationszwecken. Rechtsgeschäftliche Erklärungen dürfen über dieses Medium 
nicht ausgetauscht werden.

Correspondence with a.m. sender via e-mail is only for information purposes. 
This medium is not to be used for the exchange of legally-binding 
communications.

Reply via email to