[ https://issues.apache.org/jira/browse/TAP5-2786?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17876438#comment-17876438 ]
ASF subversion and git services commented on TAP5-2786: ------------------------------------------------------- Commit 6661642ca1d662bb084d5addb6dae082ae830898 in tapestry-5's branch refs/heads/master from Thiago H. de Paula Figueiredo [ https://gitbox.apache.org/repos/asf?p=tapestry-5.git;h=6661642ca ] TAP5-2786: don't override final method in subclass when in multiple classloader mode > 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 > > 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)