[
https://issues.apache.org/jira/browse/OWB-941?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13968777#comment-13968777
]
Tobias Stoeckmann commented on OWB-941:
---------------------------------------
One of the final methods is "isRunningOrShutdown(boolean shutdownOk)" which
triggers the error message. There are more around, checked with Java 8 and Java
7. Java 8 is the main reason I try 1.2.3-SNAPSHOT, heh.
Romain, yeah there is the ExecutorService interface, but the cdi container
couldn't fulfill an Injection request with an ApplicationScoped
ThreadPoolExecutor (which is an ExecutorService) due to the final methods.
I wrote an adapter class that implements ExecutorService and delegates
everything to the ThreadPoolExecutor. Works at least.
> Signal or handle differently final methods
> ------------------------------------------
>
> Key: OWB-941
> URL: https://issues.apache.org/jira/browse/OWB-941
> Project: OpenWebBeans
> Issue Type: New Feature
> Components: New Features
> Affects Versions: 1.2.2
> Reporter: Ludovic Pénet
> Assignee: Mark Struberg
> Priority: Minor
> Labels: features
> Fix For: 1.2.3
>
>
> OWB does not properly handle final methods of classes.
> That leads to strange bugs, like discussed on this thread
> http://mail-archives.apache.org/mod_mbox/deltaspike-users/201403.mbox/browser
> In this case, there is
> public class Base implements Serializable {
> public final List getValues() { ... }
> }
> @Named
> @ViewAccessScoped
> public class DerivedFromBase extends Base {
> }
> In my case, the method was called on the proxy rathered that on the base
> class when called through an EL expression like #{derivedFromBase.values}
> It would be nice if OWB would
> 1) scream if it encounters a "final" method. Refusing to create a proxy might
> be a bit harsh. Just not proxying the "final" method along with a log might
> be better (and easier to debug)
> or better
> 2) handle differently final methods
--
This message was sent by Atlassian JIRA
(v6.2#6252)