History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: GROOVY-2326
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Jochen Theodorou
Reporter: Reginaldo Delfino
Votes: 0
Watchers: 1
Operations

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

Groovy objects trying to override final methods

Created: 23/Nov/07 08:44 AM   Updated: 28/May/08 09:15 PM
Component/s: class generator, command line processing
Affects Version/s: 1.0, 1.1-rc-2
Fix Version/s: 1.5

Time Tracking:
Not Specified

File Attachments: 1. Zip Archive bug.zip (1 kb)

Environment:
Windows XP
Groovy Version: 1.0 JVM: 1.6.0-b105
Groovy Version: 1.1-rc-2 JVM: 1.6.0-b105

Issue Links:
Supercedes
 


 Description  « Hide
Using a java framework that defines a class like this

public class FrameworkComponent {
// lots of fields
// lots of methods
public final Object getProperty(String name) { return frameworkStuff.get(name); }

// lots of other fields
// lots of other methods
}

If one tries to create a Groovy class that extends this
FrameworkComponent like the following:

class MyComponent extends FrameworkComponent {
def size = 10
}

the groovy compiler raises an error saying that MyComponent
overrides final method getProperty(String name) from
FrameworkComponent.

Attached to this issue follows bug.zip containing a mockup of this
framework and a Groovy class that extends the framework class.

To reproduce the error just unzip the file, navigate to the unzipped folder
and fire:

groovyc -cp framework.jar MyComponent.groovy

it will raise the following error lines

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed, MyComponent.groovy: -1: You are not allowed to overwrite the final method getProperty(java.lang.String) from class 'FrameworkComponent'.
@ line -1, column -1.
1 error



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Graeme Rocher - 30/Nov/07 04:01 AM
IMO this issue effects our java integration story and needs to be fixed for 1.1

Jochen Theodorou - 06/Dec/07 04:00 PM
fixed