12

I am trying to reverse engineer a SQL Server 2005 using Hibernate Tools and am getting a strange error:

org.hibernate.cfg.JDBCBinderException: 
     Duplicate class name 'CheckConstraints' generated for
     'org.hibernate.mapping.Table(e2rm_maintenance_development2.sys.check_constraints‌​)'. 
     Same name where generated for             
     'org.hibernate.mapping.Table(e2rm_maintenance_development2.sys.check_constraints‌​)' 

    Duplicate class name 'CheckConstraints' generated for 
    'org.hibernate.mapping.Table(e2rm_maintenance_development2.sys.check_constraints‌​)'. 
    Same name where generated for 
    'org.hibernate.mapping.Table(e2rm_maintenance_development2.sys.check_constraints‌​)'

3 Answers 3

19

A development user has typically access to multiple database schema s with similar tables. The Generation tool tries to generate output for all those databases and this results in duplicate class names (even if you ask for ddl generation).

Add a 'reveng' setup and limit the output to one database schema.

Also add necessary parameters from the selected 'Exporters'. Some are necessary, but this is not indicated in the overview.

Configure with reveng.xml

Add necessary variables

Sign up to request clarification or add additional context in comments.

3 Comments

What should i do after clicking on Add Exporter Property ? what should i give for values ??
Selecting the specific Database Schema worked for me!
multiple database schema filter to single
4

I was able to avoid the error by creating "hibernate.reveng.xml" in which I excluded "sys" and "INFORMATION" schemas and only included "dbo" schema.

1 Comment

How did you exclude schema please? I am trying in NB8.02 even with explicit schema & explicit tables still get "'validname.CheckConstraints" on db.sys.check_constraint.
1

as a continue to Daniil Shevelev answer (this is what worked for me ) in order to exlude schema add new reveng.xml then choose new and on the next screen click next -then click refresh on the buttom (takes some time to get the schemas) then stand on the relevant scheme and exclude it see picture here

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.