2011-04-17 55 views
0

我想尝试使用DBUnit进行单元测试,但是我的数据集有问题。DBunit和数据集列

这里是我的持久性对象:

@Entity 
@Table(name = "personnes") 
public class Personne implements Serializable { 
    @Id 
    @GeneratedValue(strategy = GenerationType.AUTO) 
    private Integer pk; 

    @Column 
    private String name; 
} 

而且我的数据集:

<?xml version='1.0' encoding='UTF-8'?> 
<dataset> 
    <personnes name="toto" pk="1" /> 
</dataset> 

我的问题是,与名字列,我得到这个错误:

org.dbunit.dataset.NoSuchColumnException: personnes.NAME - (Non-uppercase input column: name) in ColumnNameToIndexes cache map. Note that the map's column names are NOT case sensitive. 

我不不明白为什么dbunit搜索列“NAME”,而我的列是“名称”。

感谢您的帮助。

回答

1

您的JPA供应商适配器可能仅在大写字母中创建列名。您可以使用Column注释隐式定义列名称。

2

我刚刚通过将dbunit从版本2.4.8恢复到2.2.2来解决此问题。我使用它与单位3.8。