Component id validation fails to handle event bubbling scenarios correctly
--------------------------------------------------------------------------

                 Key: TAP5-1745
                 URL: https://issues.apache.org/jira/browse/TAP5-1745
             Project: Tapestry 5
          Issue Type: Bug
          Components: tapestry-core
    Affects Versions: 5.3
            Reporter: Ville Virtanen
            Priority: Blocker


TAP5-1596 added component event handler validation to check that component 
actually exists that can trigger the event that listener listens to. This 
functionality fails if the component throwing the event is not in the template 
that declares the listener - thus event bubbling is not possible anymore.

I have:
Page
 - MyComponent
   - Form t:id="myForm"

If the validation is disabled (using 
configuration.add(SymbolConstants.UNKNOWN_COMPONENT_ID_CHECK_ENABLED, 
"false");) I can declare event listener "onFailureFromMyForm" and everything 
works as expected.

When the validation is enabled I get the exception "Method 
Page.onFailureFromMyForm() references component id 'MyForm' which does not 
exist.". This is obviously wrong and the check algorithm should check the WHOLE 
component tree if there is such an id.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to