[hibernate-issues] [Hibernate-JIRA] Created: (HBX-849) Tools does not insert @Type in POJOs for user types defined in reveng.xml

Zeljko Trogrlic (JIRA) noreply at atlassian.com
Wed Jan 10 11:58:44 EST 2007


Tools does not insert @Type in POJOs for user types defined in reveng.xml
-------------------------------------------------------------------------

         Key: HBX-849
         URL: http://opensource.atlassian.com/projects/hibernate/browse/HBX-849
     Project: Hibernate Tools
        Type: Bug

  Components: hbm2java, reverse-engineer  
 Environment: jboss-seam-1.1.0.GA, MySQL
    Reporter: Zeljko Trogrlic


I have created reveng.xml file:

<hibernate-reverse-engineering>
    <table
            catalog="configuration"
            name="userdb_domain_acl">
        <column name="enabled" type="com.siemens.msm.model.mapping.BooleanEnumType" exclude="false"/>
    </table>
</hibernate-reverse-engineering>

and included it in build.xml:

            <jdbcconfiguration propertyfile="build.properties"
            	                packagename="${model.package}"
                                revengfile="${project.home}/reveng.xml"/>

Generated POJO attribute has proper type, but user type information is missing:

	@Column(name = "enabled")
	@Length(max = 42)
	public Boolean getEnabled() {
            ....

so Hibernate reports error:

3:49:31,397 INFO  [TableMetadata] table found: configuration.userdb_domain_acl
13:49:31,397 INFO  [TableMetadata] columns: [id, enabled, tablename, domain]
13:49:31,397 WARN  [ServiceController] Problem starting service persistence.units:ear=msmgui.ear,unitName=msmgui
javax.persistence.PersistenceException: org.hibernate.HibernateException: Wrong column type: enabled, expected: varchar(
2)
        at org.hibernate.ejb.Ejb3Configuration.buildEntityManagerFactory(Ejb3Configuration.java:698)
        at org.hibernate.ejb.HibernatePersistence.createContainerEntityManagerFactory(HibernatePersistence.java:127)
        at org.jboss.ejb3.entity.PersistenceUnitDeployment.start(PersistenceUnitDeployment.java:264)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

Annotations should look like this:

   @Column(name = "enabled")
   @Type(type="booleanEnum")
   public Boolean getEnabled() {
      ...


-- 
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