Dozer-Mapping.xml:找不到元素'映射'的声明

时间:2013-09-16 09:07:19

标签: xml spring web-services dozer

我正在尝试在Spring Web Service Project中实现Dozer映射器。 我收到以下错误: 的例外:

org.springframework.beans.factory.parsing.BeanDefinitionParsingException:配置问题:无法从相对位置导入bean定义[dozer-mapping.xml] 违规资源:类路径资源[projectName / application-context.xml];嵌套异常是org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException:来自类路径资源[folderName / dozer-mapping.xml]的XML文档中的第4行无效;嵌套异常是org.xml.sax.SAXParseException:cvc-elt.1:找不到元素'mappings'的声明。 引起:org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException:来自类路径资源[employeeelectionrs / dozer-mapping.xml]的XML文档中的第4行无效;嵌套异常是org.xml.sax.SAXParseException:cvc-elt.1:找不到元素'mappings'的声明。     在org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:396)     在org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:334)     在org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:302)

我的代码: 推土机-mapping.xml

<?xml version="1.0" encoding="UTF-8"?>
<mappings xmlns:ns="http://dozer.sourceforge.net"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://dozer.sourceforge.net
http://dozer.sourceforge.net/schema/beanmapping.xsd">
 <mapping>
<class-a>org.testing.ui.types.HistoryRequest</class-a>
<class-b>org.testing.api.types.HistoryReq</class-b>
<field>
    <a>Status</a>
    <b>StatusCode</b>
</field>
</mapping>
</mappings>

应用context.xml中

<import resource="dozer-mapping.xml"/>  
<bean id="dozerBeanMapper" class="org.dozer.spring.DozerBeanMapper">
    <property name="mappingFiles">
        <list>
            <value>dozer-mapping.xml</value>
        </list>
    </property>
</bean> 

使用的推土机罐子: - commons-beanutils-1.8.3.jar - commons-lang-2.6.jar - dozer-5.3.2.jar - jcl-over-slf4j-1.6.6.jar - log4j-1.2.15.jar - slf4j-api-1.6.6.jar - slf4j-log4j12-1.6.6.jar

我从Dozer官方网页上获得了以上的罐子。 我尝试了很多次,但每当我启动 Weblogic 服务器时,都会抛出上述异常。 请帮助/指导。

1 个答案:

答案 0 :(得分:0)

删除<import resource .. />行。为什么要将映射配置作为spring配置文件的一部分加载。对此配置感兴趣的唯一bean应该是DozerbeanMapper

<bean id="dozerBeanMapper" class="org.dozer.spring.DozerBeanMapper">
    <property name="mappingFiles">
        <list>
            <value>dozer-mapping.xml</value>
        </list>
    </property>
</bean>