Uploaded image for project: 'Tapestry 5'
  1. Tapestry 5
  2. TAP5-2449

PropertyConduitSource can't see Java 8 default methods

    XMLWordPrintableJSON

    Details

      Description

      Stets to reproduce:
      Class with

      public class TestDefaultMethod {
          @Property private TestData testData = new TestData();
      
          public static interface TestInterface {
              public default String getTestString() {
                  return "Alpha";
              }
          }
      
          public static class TestData implements TestInterface {
          }
      }
      

      Template with

      ${testData.testString}
      

      Expected:
      "Alpha" is put in the website

      Actual:
      Exception type: org.apache.tapestry5.ioc.util.UnknownValueException
      Message: Class com.example.pages.TestDefaultMethod$TestData does not contain a property (or public field) named 'testString'.
      availableValues: AvailableValues[Properties (and public fields): class]

      It works with

      ${testData.getTestString()}
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                quurks quurks
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: