[
https://issues.apache.org/jira/browse/TAP5-1745?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ville Virtanen updated TAP5-1745:
---------------------------------
Description:
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.
Edit:
permalink to nabble discussion about this incident:
http://tapestry.1045711.n5.nabble.com/T5-3-rc3-event-bubbling-bug-tp4966490p4968863.html
was:
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.
> 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.
> Edit:
> permalink to nabble discussion about this incident:
> http://tapestry.1045711.n5.nabble.com/T5-3-rc3-event-bubbling-bug-tp4966490p4968863.html
--
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