tapestry-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Oliver Kaiser <oliver.kai...@eddyson.de>
Subject Proxying default methods does not work with 5.5.0-beta-2
Date Mon, 06 May 2019 17:34:32 GMT
Hi everyone,

given something like this:

public interface Blub {
   public default String foo() {
     return "Default";
public class BlubImpl implements Blub {
   public String foo() {
     return "Impl";

when calling "registry.getService(Blub.class).foo()" using beta-1 this 
works as expected (BlubImpl is called); when using beta-2 only the 
default method is called.

the log output of PlasticProxyFactory shows that the method is skipped 
in the generated class

seems to be related to this commit 

now "proxyInterface(Class, PlasticMethod)" only
calls "introduceInterface(Class, PasticMethod)" (which skips the method 
as "isDefaultMethod(m)" returns true); earlier versions had an 
additional for-loop which handled this case (at least from stepping 
though in a debugger it looks that way)

that's a regression, right?

btw: thanks to everyone who worked on the 5.4->5.5 transition; updating 
was very smooth!


To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org

View raw message