[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-1189) interfaces for Proxies are not regonized as interfaces
Paul Benedict (JIRA)
noreply at atlassian.com
Mon Jun 2 11:24:33 EDT 2008
[ http://opensource.atlassian.com/projects/hibernate/browse/HHH-1189?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_30308 ]
Paul Benedict commented on HHH-1189:
------------------------------------
This issue now has a test case. Can it be looked at again for 3.3?
Our development has the same issue: we query for a list of AbstractItems, which implement the Item interface, but the concrete subclasses also have specific interfaces. Currently, we cannot cast to those subinterfaces through a proxy.
> interfaces for Proxies are not regonized as interfaces
> ------------------------------------------------------
>
> Key: HHH-1189
> URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-1189
> Project: Hibernate3
> Issue Type: Patch
> Components: core
> Affects Versions: 3.1 rc3
> Environment: Discovered on Hibernate 3.0, still present in 3.1rc3
> Reporter: Tobias
> Assignee: Steve Ebersole
> Priority: Critical
> Attachments: eg.zip
>
> Original Estimate: 1 hour
> Remaining Estimate: 1 hour
>
> In org.hibernate.tuple.PojoEntityTuplizer line 119 reads:
> if ( !proxyInterface.isInterface() ) {
> and should be
> if ( !subclassClass.isInterface() ) {
> So the code then would look like this:
> Subclass subclass = ( Subclass ) iter.next();
> Class subclassProxy = subclass.getProxyInterface();
> Class subclassClass = subclass.getMappedClass();
> if ( subclassProxy!=null && !subclassClass.equals( subclassProxy ) ) {
> if ( !subclassProxy.isInterface() ) { // HERE!
> throw new MappingException(
> "proxy must be either an interface, or the class itself: " +
> subclass.getEntityName()
> );
> }
> proxyInterfaces.add( subclassProxy );
> }
> After that change the specified interfaces for subclass proxies are regonized as such. Without this patch the superclass is checked, which may not have/be an interface as proxy class.
--
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