DBunit; confusion over case sensitivity on table/column names
DBunit; confusion over case sensitivity on table/column names
I'm getting this error when I start up my application
Caused by: org.dbunit.dataset.NoSuchColumnException: CLIENT.ID - (Non-uppercase input column: ID) in ColumnNameToIndexes cache map. Note that the map's column names are NOT case sensitive
I'm not too sure why I'm getting this, since my table/column names all all referenced in upper case(even though the message insists this shouldn't be an issue)
My table :
mysql> describe CLIENT; +------------------+--------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------------+--------------+------+-----+---------+----------------+ | ID | int(11) | NO | PRI | NULL | auto_increment | | jdoDetachedState | tinyblob | YES | | NULL | | | NAME | varchar(255) | NO | | NULL | | | ADDRESS1 | varchar(255) | YES | | NULL | | | ADDRESS2 | varchar(255) | YES | | NULL | | | COUNTRY | varchar(255) | YES | | NULL | | | COUNTY | varchar(255) | YES | | NULL | | | MAINPHONENUMBER | varchar(255) | YES | | NULL | | | POSTCODE | varchar(255) | YES | | NULL | | | SECTOR | varchar(255) | YES | | NULL | | | TOWN | varchar(255) | YES | | NULL | | | WEBSITEURL | varchar(255) | YES | | NULL | | +------------------+--------------+------+-----+---------+----------------+ 12 rows in set (0.00 sec) mysql>
Snippet of my domain entity :
@Id @GeneratedValue @Column(name="ID") private Integer id;
Snippet of test date I'm trying to force DBUnit to use:
I can't think of anything else to try, have dropped tables and recompiled java code, any ideas?
Answer by amorfis for DBunit; confusion over case sensitivity on table/column names
Aren't you trying to put to database Client with ID already set? ID column is read-only, only database can "write" to it.
Answer by dres for DBunit; confusion over case sensitivity on table/column names
this error goes away with mysql and hsql if you make format = flat
Answer by Paul Podgorsek for DBunit; confusion over case sensitivity on table/column names
I've also had this problem after adding a column to one of my entities (using an in-memory HSQL database).
I managed to solve this problem by simply deleting the temporary files that had previously been generated: mem:testdb.log, mem:testdb.properties and mem:testdb.script
Why did this error occur? => A database schema is stored in the mem:testdb.script file and is not re-generated when the entity is modified.
Answer by Bilbo Baggins for DBunit; confusion over case sensitivity on table/column names
I ran into the same error, fortunately we had some other test written earlier and found that in most of the tutorials the format the way the xml is written is for the FlatXMLDataSet if you are using XML data set then the correct version is as follow checkout the link at the bottom for more information.
it should be in following format.
id name department startDate endDate 999 TEMP TEMP DEPT 2113-10-13 2123-10-13
For more information go to this link.
http://dbunit.sourceforge.net/components.html#FlatXmlDataSet
One more time I faced this error in another project, we have a hierarchy of model class, some how hibernate used to create a table Role with 7 columns but while running it with DBUnit it was unable to create the columns(Only 5 were created) hence it was throwing this error, Solution : Manually created this table and 3 more relationship tables which were not created by hibernate.
Answer by tak3shi for DBunit; confusion over case sensitivity on table/column names
I have fixed the error by adding the mentioned column to my entity.
Fatal error: Call to a member function getElementsByTagName() on a non-object in D:\XAMPP INSTALLASTION\xampp\htdocs\endunpratama9i\www-stackoverflow-info-proses.php on line 72
0 comments:
Post a Comment