Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
5.3.2
Description
package test.propertyaccess;
import org.apache.tapestry5.ioc.Registry;
import org.apache.tapestry5.ioc.RegistryBuilder;
import org.apache.tapestry5.ioc.services.ClassPropertyAdapter;
import org.apache.tapestry5.ioc.services.PropertyAccess;
import org.apache.tapestry5.ioc.services.PropertyAdapter;
public class App {
public interface MyBeanInterface
{ int getValue(); }public interface MyEditableBeanInterface extends MyBeanInterface
{ void setValue(int value); }public static void main(String[] args)
{ // init RegistryBuilder builder = new RegistryBuilder(); Registry registry = builder.build(); registry.performRegistryStartup(); // get property adapter PropertyAccess propertyAccess = registry.getService(PropertyAccess.class); ClassPropertyAdapter classAdapter = propertyAccess.getAdapter(MyEditableBeanInterface.class); PropertyAdapter propertyAdapter = classAdapter.getPropertyAdapter("value"); // print System.out.println(propertyAdapter.isRead() ? "value is readable" : "value is not readable"); System.out.println(propertyAdapter.isUpdate() ? "value is updateable" : "value is not updateable"); }}
Output:
value is readable
value is not updateable
Why?
Attachments
Issue Links
- is related to
-
TAP5-1548 Property expressions fails when using a supertype that implements an interface with a matching method
- Resolved
- relates to
-
TAP5-1493 Property expressions on properties that are covariant on a base class use the type of the base class property, not the covariant subclass
- Resolved