Java org.dbunit.database.AmbiguoCustomableNameException

Java org.dbunit.database.AmbiguoCustomableNameException,java,xml,dbunit,Java,Xml,Dbunit,上面是我的XML。我必须验证这一点。我使用DBUnit将同一XML与其他XML进行比较(其他XML具有相同的内容,但从不同的源生成)。在创建数据集时,我得到了“org.dbunit.database.AmbiguoCustomableNameException” 我已经为每个XML标记创建了SQL查询。例如,对于我在empID上查询的员工标签。对于设施,我正在查询mealCard等。我正在循环使用XML标记。第一次迭代没有错误。我正在使用QueryDataSet.addTable(table_n

上面是我的XML。我必须验证这一点。我使用DBUnit将同一XML与其他XML进行比较(其他XML具有相同的内容,但从不同的源生成)。在创建数据集时,我得到了“org.dbunit.database.AmbiguoCustomableNameException”


我已经为每个XML标记创建了SQL查询。例如,对于我在empID上查询的员工标签。对于设施,我正在查询mealCard等。我正在循环使用XML标记。第一次迭代没有错误。我正在使用QueryDataSet.addTable(table_name,query)添加表,即xml标记。但是,当下一次迭代到来时,当我再次尝试添加employee标记时,就会出现上述错误。

配置模式名称,以便dbUnit知道要使用哪个。请参见

我已解决此问题。我来告诉你怎么做。在重复标记的数据集中,我只是添加了随机数,例如,在我上面的XML中,employee是重复标记,因此我在数据集的第一个实例中添加了employee_123,在下一个实例中添加了employee_098。这就是我如何设法消除AmbigioCustomableNameException的方法。后来,我使用RegEx删除了附加到employee标记上的“u[randomNumber]”。代码正在成功运行。

是的。我读了这个。这里他们指的是模式。就是那个数据库模式,那么我只处理1个模式,我已经在CAPS中提到过了。我仍然得到了错误。
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
    <employee name = "abc" empId = "100" location = "goa" dept = "IT" />
        <facilities transport="Y" mealcard = "" driver = "Y"/>
        <reportees manager = "XXX" lead = "XXX" VP = "XXX"/>
    <employee name = "XYZ" empId = "101" location = "mombai" dept = "IT" />
        <facilities transport="Y" mealcard = "" driver = "Y"/>
        <reportees manager = "XXX" lead = "XXX" VP = "XXX"/>
    <employee name = "PQA" empId = "102" location = "delhi" dept = "IT" />
        <facilities transport="Y" mealcard = "" driver = "Y"/>
        <reportees manager = "XXX" lead = "XXX" VP = "XXX"/>