[jbosstools-issues] [JBoss JIRA] Commented: (JBIDE-6351) org.hibernate.cfg.reveng.JDBCReader processTables() should support mixed-case names for TableTypes

Michael Walker (JIRA) jira-events at lists.jboss.org
Thu May 27 17:29:08 EDT 2010


    [ https://jira.jboss.org/browse/JBIDE-6351?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12532880#action_12532880 ] 

Michael Walker commented on JBIDE-6351:
---------------------------------------

Yes, that line is the only thing that was changed. However, I just noticed that the same change should be made about 10 lines further down:
					  if(tableType.("TABLE")) {

should be:
					  if(tableType.equalsIgnoreCase("TABLE")) {

I'm having some issue with my build environment that is preventing me from cutting a patch, so hopefully this is enough information, but let me know if you'd prefer a patch and I'll look into it further.

> org.hibernate.cfg.reveng.JDBCReader processTables() should support mixed-case names for TableTypes
> --------------------------------------------------------------------------------------------------
>
>                 Key: JBIDE-6351
>                 URL: https://jira.jboss.org/browse/JBIDE-6351
>             Project: Tools (JBoss Tools)
>          Issue Type: Feature Request
>          Components: Hibernate
>    Affects Versions: 3.1.0.GA
>            Reporter: Michael Walker
>            Assignee: Max Rydahl Andersen
>            Priority: Blocker
>             Fix For: 3.2.next
>
>         Attachments: JDBCReader.java
>
>
> A particular database (MetaMatrix/JBoss Enterprise Data Services Platform) returns mixed-case values from the JDBC call DatabaseMetadata.getTableTypes(), specifically: "Table", "View".
> However, line 539 of org.hibernate.cfg.reveng.JDBCReader expects these values to always be upper-case:
> if ( ("TABLE".equals(tableType) || "VIEW".equals(tableType) 
> ...
> Upper-case values are typically expected here (see http://java.sun.com/j2se/1.4.2/docs/api/java/sql/DatabaseMetaData.html#getTableTypes%28%29), but not required per the JDBC specification AFAIK.
> Changing this logic to match on case-insensitive names allows Hibernate Tools to successfully work with MetaMatrix. For example:
> if ( ("TABLE".equalsIgnoreCase(tableType) || "VIEW".equalsIgnoreCase(tableType) /*|| "SYNONYM".equals(tableType) */) ) { //||
> See the forum thread for more info.
> I'll attach example code that was used to rebuild hibernate-tools.jar successfully, which contains only the change described above, in case it is useful.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jbosstools-issues mailing list