How to set Jaxb2Marshaller list of XmlAdapters in Spring bean through XML?
Asked Answered
H

1

6

I'm trying to define a Jaxb2Marshaller bean in Spring-WS to use a custom adapter that extends XmlAdapter. I have the following in an XML file:

<bean id="jaxb2Marshaller" class="org.springframework.oxm.jaxb.Jaxb2Marshaller">
    <property name="classesToBeBound">
        <list>
            <!-- various classes to be bound... -->
        </list>
    </property>
    <property name="schema" value="myschema.xsd" />
    <property name="adapters">
        <list>
            <value>com.lmig.am.claims.clip.ContactAdapter</value>
        </list>
    </property>
</bean>

However, I'm getting the following error:

Cannot convert value of type [java.lang.String] to required type [javax.xml.bind.annotation.adapters.XmlAdapter] for property 'adapters[0]': no matching editors or conversion strategy found

Any ideas what I'm doing wrong? Thanks!

Halide answered 11/10, 2011 at 0:3 Comment(0)
S
7

The adapters property is expecting an array of XMLAdapter objects not Classes. So the correct configuration is as follows.

<property name="adapters">
   <list>
         <bean class="com.lmig.am.claims.clip.ContactAdapter"/>
   </list>
</property>
Stationery answered 11/10, 2011 at 4:33 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.