Issue Details (XML | Word | Printable)

Key: SPR-3642
Type: Improvement Improvement
Status: Resolved Resolved
Resolution: Won't Fix
Priority: Major Major
Assignee: Unassigned
Reporter: zhouyanming
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Spring Framework

please don't generate a proxy override methods equals() and hashCode() using "final"

Created: 02/Jul/07 08:07 PM   Updated: 22/Oct/08 10:39 AM   Resolved: 22/Oct/08 10:39 AM
Component/s: SpringAOP
Affects Version/s: 2.1 M2, 2.0.6
Fix Version/s: None

Time Tracking:
Not Specified

Virtual Machine: Sun JVM - 1.5
Platform: Standalone



Juergen Hoeller added a comment - 03/Jul/07 07:55 AM

CGLIB seems to make those methods final by default - and there is no obvious option to keep them non-final.

Rob, do you have any insights to share here?

Juergen


Rob Harrop added a comment - 03/Jul/07 11:15 AM

We would, as a minimum, need to hook into the CGLIB ASM usage to change this. I can't forsee a reason why this would be a problem but, the devil is in the details...


Jörg Heinicke added a comment - 03/Jul/07 03:03 PM

Aren't the CGLib proxies themselves final? I got this from different double-proxying threads in the forum where the second (mostly unwanted) proxying fails due to unextendable "classes" of the first proxying when the result of the first one are CGLib proxies. See for example http://forum.springframework.org/showthread.php?t=40829#3. There should be more like this.

Jörg


Rob Harrop added a comment - 03/Jul/07 03:49 PM

That is the case, but we may well be able to change that as needed.


Juergen Hoeller added a comment - 22/Oct/08 10:39 AM

It's not currently on the roadmap to do anything here. We might eventually do a CGLIB alternative for class proxying, but that's still a while away.

Juergen