[hibernate-issues] [Hibernate-JIRA] Updated: (HHH-3717) SINGLE_TABLE inheritance: PersistentCollectionChangeWorkUnit.java: string truncating is used to find a property name from a collectionEntry
Michele Comitini (JIRA)
noreply at atlassian.com
Fri Jan 16 06:25:39 EST 2009
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-3717?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michele Comitini updated HHH-3717:
----------------------------------
Attachment: PersistentCollectionChangeWorkUnit.java.diff
the patch
> SINGLE_TABLE inheritance: PersistentCollectionChangeWorkUnit.java: string truncating is used to find a property name from a collectionEntry
> -------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: HHH-3717
> URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3717
> Project: Hibernate Core
> Issue Type: Bug
> Environment: envers 1.1.0 GA
> Reporter: Michele Comitini
> Attachments: PersistentCollectionChangeWorkUnit.java.diff
>
>
> in PersistentCollectionChangeWorkUnit.java string truncating is used to find a property name from a collectionEntry. It seems that if the entity is derived
> with SINGLE_TABLE inheritance this truncating is fault prone.
> I attached a quick patch that seems to fix the problem, but I think manipulating strings is still not too safe to find the correct property name...
> Here is an excerpt of code that happens to fail:
> @Entity
> @Versioned
> @Table(name = "notifica")
> @Inheritance(strategy=InheritanceType.SINGLE_TABLE )
> @NamedQueries({
> @NamedQuery(name="Notifica.all", query="from Notifica"),
> })
> public class Notifica extends BaseCQOPEntity implements Persistent
> {
> private static final long serialVersionUID = -7096378249035298397L;
> @Id
> @GeneratedValue
> @XStreamAlias("idd")
> private Long id;
>
> @Where(clause="not(deleted=(1=1))")
> @OneToMany(fetch=FetchType.EAGER)
> @Cascade({})
> private Set<Ruolo> ruoli = new HashSet<Ruolo>();
> .
> .
> .
> }
> @Entity
> @Versioned
> @DiscriminatorValue(value="Pratica")
> public class NotificaPratica extends NotificaImpresa
> {
> private static final long serialVersionUID = 1L;
> .
> .
> .
> }
--
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