[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-3231) org.hibernate.id.enhanced.TableGenerator throws "IllegalArgumentException: alias not found: tbl" under Oracle

Király Attila (JIRA) noreply at atlassian.com
Tue Sep 30 05:57:05 EDT 2008


    [ http://opensource.atlassian.com/projects/hibernate/browse/HHH-3231?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=31311#action_31311 ] 

Király Attila commented on HHH-3231:
------------------------------------

@Prakash
Are you sure that you are using the 3.3.1 version of hibernate core?
Your exception is the same as my was with 3.2.6 (before the fix). The exception says
        at org.hibernate.id.enhanced.TableGenerator.configure(TableGenerator.java:194)
Checking the sourcecode of o.h.id.enhanced.TableGenerator this function name and row number is correct in 3.2.6 but it has changed in 3.3.1 (configure is between rows 279 - 299 now).

> org.hibernate.id.enhanced.TableGenerator throws "IllegalArgumentException: alias not found: tbl" under Oracle
> -------------------------------------------------------------------------------------------------------------
>
>                 Key: HHH-3231
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3231
>             Project: Hibernate Core
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 3.2.6
>         Environment: Hibernate 3.2.6GA, Oracle 10g
>            Reporter: Király Attila
>            Assignee: Steve Ebersole
>             Fix For: 3.2.x, 3.3.1, 3.4
>
>         Attachments: hibernate_etg_ora.zip
>
>
> org.hibernate.id.enhanced.TableGenerator always throws the following exception if I want to save a new object to Oracle:
> java.lang.IllegalArgumentException: alias not found: tbl
> 	at org.hibernate.sql.ForUpdateFragment.<init>(ForUpdateFragment.java:36)
> 	at org.hibernate.dialect.Dialect.applyLocksToSql(Dialect.java:970)
> 	at org.hibernate.id.enhanced.TableGenerator.configure(TableGenerator.java:194)
> 	at org.hibernate.id.IdentifierGeneratorFactory.create(IdentifierGeneratorFactory.java:104)
> I attach an example to this case. The example is loosely based on the tutorial example, that comes with Hibernate. It contains a Person object that is saved to db using the enhanced.TableGenerator as id generator. To keep the zip small only the jars of jdbc driver are included, the jars needed from hibernate distribution are listed in lib/readme.txt.
> The zip also contains a modified TableGenerator that works with Oracle. This version was made by forum user stomp and more information about it can be read here: http://forum.hibernate.org/viewtopic.php?t=980933
> It changes the 194th row of TableGenerator from
> this.query = dialect.applyLocksToSql( query, lockMap, CollectionHelper.EMPTY_MAP );
> to
> this.query = dialect.applyLocksToSql( query, lockMap, Collections.singletonMap("tbl", new String[] {valueColumnName}) );

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