[
https://issues.apache.org/jira/browse/TAP5-2786?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Thiago Henrique De Paula Figueiredo closed TAP5-2786.
-----------------------------------------------------
Fix Version/s: 5.9.0
Resolution: Fixed
> Attempt to override final method in subclass when in multiple classloader mode
> ------------------------------------------------------------------------------
>
> Key: TAP5-2786
> URL: https://issues.apache.org/jira/browse/TAP5-2786
> Project: Tapestry 5
> Issue Type: Bug
> Components: tapestry-core
> Affects Versions: 5.8.7
> Reporter: Thiago Henrique De Paula Figueiredo
> Assignee: Thiago Henrique De Paula Figueiredo
> Priority: Minor
> Fix For: 5.9.0
>
>
> With this code:
> Select.java
> {code:java}
> @Cached(watch = "clientId")
> protected final List<?> getList() {
> return createList();
> }
> protected List<?> createList() {
> return list_;
> }{code}
> SelectDigest.java
> {code:java}
> public class SelectDigest extends Select {
> @Override
> protected List<?> createList() {
> ....
> }
> }{code}
> This exception happens:
> java.lang.IncompatibleClassChangeError
> *class root_package.components.SelectDigest overrides final method
> root_package.components.Select.getList()Ljava/util/List;*
>
> If I remove the {{final}} modifier from the superclass' {{getList()}} method,
> the problem doesn't work.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)