Invalid chaining of client behavior scripts when using both, explicitly
provided event and default event
--------------------------------------------------------------------------------------------------------
Key: MYFACES-3513
URL: https://issues.apache.org/jira/browse/MYFACES-3513
Project: MyFaces Core
Issue Type: Bug
Affects Versions: 2.1.5
Reporter: Lukas Fryc
When two client behaviors are provided and one uses default event while second
has event provided
{code:XML|title=behavior-test.xhtml}
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html"
xmlns:fryc="http://fryc.eu/behavior">
<h:body>
<h:inputText>
<f:ajax event="change" />
<fryc:behavior1 />
</h:inputText>
</h:body>
</html>
{code}
these scripts are chained wrong:
{code:XML|title=output}
<input id="j_id_3" name="j_id_3" type="text" value=""
onchange="jsf.util.chain(document.getElementById('j_id_3'),
event,'jsf.ajax.request(\'j_id_3\',event,{\'javax.faces.behavior.event\':\'change\'})''alert(\'xyz\')');
return false;" />
{code}
Follows source code for additional behavior:
{code:java|title=Behavior1.java}
@FacesBehavior("eu.fryc.Behavior1")
public class Behavior1 extends ClientBehaviorBase {
@Override
public String getScript(ClientBehaviorContext behaviorContext) {
return "alert('xyz')";
}
}
{code}
{code:xml|title=META-INF/fryc.taglib.xml}
<facelet-taglib xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-facelettaglibrary_2_0.xsd"
version="2.0">
<namespace>http://fryc.eu/behavior</namespace>
<tag>
<tag-name>behavior1</tag-name>
<behavior>
<behavior-id>eu.fryc.Behavior1</behavior-id>
</behavior>
</tag>
</facelet-taglib>
{code}
----
Note that if you provide events explicitly for both behaviors (or not provide
events at all), chaining works as expected.
--
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