Используя Spring 3, я создал MarshallingView со следующим маршаллером:
<bean name="xmlMarshaller" class="org.springframework.oxm.jaxb.Jaxb2Marshalle r">
<property name="classesToBeBound">
<list>
<value>com.mydomain.xml.schema.Products</value>
</list>
</property>
<property name="marshallerProperties">
<map>
<entry key="com.sun.xml.bind.namespacePrefixMapper">
<bean class="com.mydomain.xml.MyNamespacePrefixMapper"/>
</entry>
</map>
</property>
</bean>
Предполагается, что MyNamespacePrefixMapper отображает схему объекта Products (сгенерированного XJC) на пространство имен по умолчанию, ноне потому, что Jaxb2Marshaller создает JAXBContext, который содержит два разных URI пространства имен.Одна - моя схема, другая - пустая строка.Пустая строка отменяет любую мою попытку назначить пространство имен по умолчанию.
Кто-нибудь знает, почему существует эта пустая строка или как я могу от нее избавиться?