You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cxf.apache.org by nicolas de loof <ni...@apache.org> on 2008/04/15 14:25:32 UTC
JAXBException: javax.xml.ws.Holder is not known to this context
Hello,
I just generated code from my WSDL using CXF maven2 plugin (2.0.5-incubator)
The generated service interface uses a Holder<String> argument as both
Request and Response message use the same argument.
When I try to invoke the service using "local://service" adress, I get a
serialization error :
javax.xml.bind.JAXBException: javax.xml.ws.Holder is not known to this
context
at
com.sun.xml.bind.v2.runtime.JAXBContextImpl.getBeanInfo(JAXBContextImpl.java:538)
As Holder is an jax-ws API class, I have no idea what I could have missed
...
please help ;-)
Nico.
Re: JAXBException: javax.xml.ws.Holder is not known to this context
Posted by nicolas de loof <ni...@apache.org>.
I've found my mistake : reading (
http://cwiki.apache.org/CXF20DOC/local-transport.html) I understood the
distinction between simple and Jax-WS frontends.
Replacing ServerFactoryBean with Endpoint.publish( "local://service",
getServiceBean() ); enables the Jax-WS stack and fix my issue.
Nico.
2008/4/15, nicolas de loof <ni...@apache.org>:
>
> First, setting the Holder argument to null makes my local://service call
> pass.
>
> I get the message payload : <soap:Body><ns1:setPayment ...
>
> I then found in list archive a similar issue, with solution to use
> JaxWsProxyFactoryBean fior client.
>
> Using this, my Holder is serialized without issue, but the message is
> wrong :
> <soap:Body><SetPayment ...
>
> --> Notice the upperCase "S"
>
> This fails to deserialize :
>
> org.apache.cxf.interceptor.Fault: Message part {
> http://33J/services/ServicesCommande/schema}SetPayment<http://33J/services/ServicesCommande/schema%7DSetPayment>was not recognized. (Does it exist in service WSDL?)
>
> Nico.
>
>
>
>
> 2008/4/15, nicolas de loof <ni...@apache.org>:
> >
> > Hello,
> >
> > I just generated code from my WSDL using CXF maven2 plugin
> > (2.0.5-incubator)
> >
> > The generated service interface uses a Holder<String> argument as both
> > Request and Response message use the same argument.
> >
> > When I try to invoke the service using "local://service" adress, I get a
> > serialization error :
> >
> > javax.xml.bind.JAXBException: javax.xml.ws.Holder is not known to this
> > context
> > at
> > com.sun.xml.bind.v2.runtime.JAXBContextImpl.getBeanInfo(JAXBContextImpl.java:538)
> >
> >
> > As Holder is an jax-ws API class, I have no idea what I could have
> > missed ...
> >
> > please help ;-)
> >
> > Nico.
> >
>
>
Re: JAXBException: javax.xml.ws.Holder is not known to this context
Posted by nicolas de loof <ni...@apache.org>.
First, setting the Holder argument to null makes my local://service call
pass.
I get the message payload : <soap:Body><ns1:setPayment ...
I then found in list archive a similar issue, with solution to use
JaxWsProxyFactoryBean fior client.
Using this, my Holder is serialized without issue, but the message is wrong
:
<soap:Body><SetPayment ...
--> Notice the upperCase "S"
This fails to deserialize :
org.apache.cxf.interceptor.Fault: Message part {
http://33J/services/ServicesCommande/schema}SetPayment was not recognized.
(Does it exist in service WSDL?)
Nico.
2008/4/15, nicolas de loof <ni...@apache.org>:
>
> Hello,
>
> I just generated code from my WSDL using CXF maven2 plugin
> (2.0.5-incubator)
>
> The generated service interface uses a Holder<String> argument as both
> Request and Response message use the same argument.
>
> When I try to invoke the service using "local://service" adress, I get a
> serialization error :
>
> javax.xml.bind.JAXBException: javax.xml.ws.Holder is not known to this
> context
> at
> com.sun.xml.bind.v2.runtime.JAXBContextImpl.getBeanInfo(JAXBContextImpl.java:538)
>
>
> As Holder is an jax-ws API class, I have no idea what I could have missed
> ...
>
> please help ;-)
>
> Nico.
>