[jira] Created: (TAP5-921) Cannot reference property from property expression if backing type is abstract and property is defined in interface

View: New views
1 Messages — Rating Filter:   Alert me  

[jira] Created: (TAP5-921) Cannot reference property from property expression if backing type is abstract and property is defined in interface

by JIRA jira@apache.org :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Cannot reference property from property expression if backing type is abstract and property is defined in interface
--------------------------------------------------------------------------------------------------------------------

                 Key: TAP5-921
                 URL: https://issues.apache.org/jira/browse/TAP5-921
             Project: Tapestry 5
          Issue Type: Bug
          Components: tapestry-core
    Affects Versions: 5.1.0.5
            Reporter: Peter Rietzler


Here is a simple example:

public interface HasName {
        String getName();
}

public abstract class AbstractBean implements HasName {
}

public class TestPage {

        @Property
        private AbstractBean bean;

        public void onActivate() {
                bean = new AbstractBean() {
                        public void setName(String name) {
                        }
                };
        }
}


TestPage.tml
...
        <h1>${bean.name}</h1>
...

Error message is:

Exception assembling root component of page manager/tools/TestPage: Could not convert 'bean.name' into a component parameter binding: Class smarter.ecommerce.smeco.manager.pages.tools.AbstractBean does not contain a property named 'name' (within property expression 'bean.name'). Available properties: class, componentResources.

Everything works fine if I change the bean class to:

public abstract class AbstractBean implements HasName {
  public abstract String getName();
}


--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.