[hibernate-issues] [Hibernate-JIRA] Closed: (HBX-749) hbm generation of many-to-many missing table name
Max Rydahl Andersen (JIRA)
noreply at atlassian.com
Wed Sep 13 08:48:24 EDT 2006
[ http://opensource.atlassian.com/projects/hibernate/browse/HBX-749?page=all ]
Max Rydahl Andersen closed HBX-749:
-----------------------------------
Fix Version: 3.2beta8
Resolution: Fixed
fiixed for <set>
> hbm generation of many-to-many missing table name
> -------------------------------------------------
>
> Key: HBX-749
> URL: http://opensource.atlassian.com/projects/hibernate/browse/HBX-749
> Project: Hibernate Tools
> Type: Bug
> Components: reverse-engineer
> Versions: 3.2beta7
> Environment: Hibernate : 3.2.0.cr4
> Hibernate Tools : 3.2.0.beta7
> MySQL database : 5.0.24-community-nt via TCP/IP
> MySQL Connector : mysql-connector-java-3.1.13-bin.jar
> Eclipse : 3.2
> Reporter: Vaughn Butt
> Priority: Critical
> Fix For: 3.2beta8
> Attachments: Person.hbm.xml, Role.hbm.xml, linktest_ddl.sql
>
>
> The problem appears to be that the hbm.xml file generated for two classes that have a Many-To-Many relationship does not include the attribute for the link (aka association) table name.
> see http://forum.hibernate.org/viewtopic.php?t=964363
> When I tried to navigate across the association using the generated hbm.xml file I got this stack trace (snipped):
> WARNING: SQL Error: 1146, SQLState: 42S02
> 5/09/2006 14:00:24 org.hibernate.util.JDBCExceptionReporter logExceptions
> SEVERE: Table 'blah.enginemodels' doesn't exist
> Exception in thread "main" org.hibernate.exception.SQLGrammarException: could not initialize a collection: [com.acme.model.ChassisModel.engineModels#1]
> at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
> at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
> When I added the table="<linktablename>" attribute to the "set" element the navigation succeeded.
> <set name="roles" inverse="true" table="lt_role_person">
> <key>
> <column name="person_pkid" not-null="true">
> <comment></comment>
> </column>
> </key>
> <many-to-many entity-name="nz.co.linktest.model.Role">
> <column name="role_pkid" not-null="true">
> <comment></comment>
> </column>
> </many-to-many>
> </set>
> I don't think the stuff in the log is related but I could be wrong so...
> The file workspace\org.hibernate.eclipse.console\hibernate-tools.log had something like
> 2006-09-02 17:59:32,812 0 [ Worker-5] WARN ibernate.cfg.reveng.JDBCReader - The JDBC driver didn't report any primary key columns in lt_e_model_c_model. Asking rev.eng. strategy
> 2006-09-02 17:59:32,812 0 [ Worker-5] WARN ibernate.cfg.reveng.JDBCReader - Rev.eng. strategy did not report any primary key columns for lt_e_model_c_model
> 2006-09-02 18:09:08,093 575281 [ Worker-1] WARN ibernate.cfg.reveng.JDBCReader - The JDBC driver didn't report any primary key columns in lt_e_model_c_model. Asking rev.eng. strategy
> 2006-09-02 18:09:08,109 575297 [ Worker-1] WARN ibernate.cfg.reveng.JDBCReader - Rev.eng. strategy did not report any primary key columns for lt_e_model_c_model
> 2006-09-03 08:03:53,718 0 [ Worker-9] WARN ibernate.cfg.reveng.JDBCReader - The JDBC driver didn't report any primary key columns in lt_e_model_c_model. Asking rev.eng. strategy
> 2006-09-03 08:03:53,750 32 [ Worker-9] WARN ibernate.cfg.reveng.JDBCReader - Rev.eng. strategy did not report any primary key columns for lt_e_model_c_model
> 2006-09-03 16:01:57,687 0 [ Worker-3] WARN ibernate.cfg.reveng.JDBCReader - The JDBC driver didn't report any primary key columns in lt_e_model_c_model. Asking rev.eng. strategy
> 2006-09-03 16:01:58,125 438 [ Worker-3] WARN ibernate.cfg.reveng.JDBCReader - Rev.eng. strategy did not report any primary key columns for lt_e_model_c_model
> 2006-09-03 16:05:27,312 209625 [ Worker-3] WARN ibernate.cfg.reveng.JDBCReader - The JDBC driver didn't report any primary key columns in lt_e_model_c_model. Asking rev.eng. strategy
> 2006-09-03 16:05:27,406 209719 [ Worker-3] WARN ibernate.cfg.reveng.JDBCReader - Rev.eng. strategy did not report any primary key columns for lt_e_model_c_model
> where lt_e_model_c_model is like the name of the link table that the reveng originally "failed" on. Interestingly there does not seem to be any similar log entries for the attached example.
> The file workspace\org.hibernate.eclipse.console\hibernate-console.xml-8 had something (some other stuff removed) like
> <?xml version="1.0" encoding="UTF-8"?><hibernate-console><configuration name="Linktest"><hibernate-config-xml location="/Linktest/src/hibernate.cfg.xml"/><classpath><path location="/Linktest/bin"/><path location="/Linktest/lib/mysql-connector-java-3.1.13-bin.jar"/></classpath></configuration></hibernate-console>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira
More information about the hibernate-issues
mailing list