I am using CXF to transform a WSDL into Java code. My WSDL is defined in XML
namespace "http://my.wsdl.namespace" and the files are generated to the Java
namespace "my.wsdl.namespace". The WSDL uses "xsd:anyType", and the data
elements being sent are in namespace "my.data.namespace". Because the WSDL
does not actually contain the data definitions, I am attempting to use a
JAXBDataBinding in order to allow the backend to unmarshall the elements
into something other than
"com.sun.org.apache.xerces.internal.dom.ElementNSImpl".
I set a JAXBDataBinding as so in beans.xml:
<jaxws:dataBinding>
<bean class="org.apache.cxf.jaxb.JAXBDataBinding">
<constructor-arg index="0">
<bean class="javax.xml.bind.JAXBContext"
factory-method="newInstance">
<constructor-arg index="0"
value="my.wsdl.namespace:my.data.namespace"/>
</bean>
</constructor-arg>
</bean>
</jaxws:dataBinding>
What I end up seeing in the Tomcat log is this:
org.springframework.beans.factory.parsing.BeanDefinitionParsingException:
Configuration problem: Unable to locate Spring NamespaceHandler for XML
schema namespace [http://my.wsdl.namespace]
Offending resource: ServletContext resource [/WEB-INF/beans.xml]
Note that the namespace indicated is that of my WSDL file.
Any information is appreciated. Been bashing my head against this one for a
few hours now. Can find very little useful on the web regarding this.
--
View this message in context:
http://www.nabble.com/cxf-2.2%3A-JAXBDataBinding-causing-Spring-2.5.6-NamespaceHandler-issues-tp24597238p24597238.html
Sent from the cxf-user mailing list archive at Nabble.com.