Resetting the value of TreeElement attribute using TreeHtmlAttributeInfo is not
handled correctly.
--------------------------------------------------------------------------------------------------
Key: BEEHIVE-1162
URL: http://issues.apache.org/jira/browse/BEEHIVE-1162
Project: Beehive
Issue Type: Bug
Components: NetUI
Affects Versions: 1.0.1, 1.0.2, V.Next
Reporter: Carlin Rogers
Assigned To: Carlin Rogers
Priority: Minor
Fix For: V.Next
When resetting the value of TreeElement attribute using TreeHtmlAttributeInfo,
the AttributeRenderer still maintains the original attribute in a list and then
it is applied to the markup of subsequent tree items. This is an issue between
the TreeElement set of attributes and the AttributeRenderer.
For example, if an attribute is applied to a tree item when the item is
selected (via a selectNode() action) and reset to a different value when a
different node is selected, the nodes that follow will have the old attribute
applied to them.
The TreeElement stores the attributes in a List. So trying to reset the
attribute value in another operation using TreeElement.addAttribute() just adds
a second entry to the list. For example, if a "style" attribute has already
been set on a tree item and then addAttribute() is used to to change the value
of the attribute on the node, it just adds it to the list. Now there's two
attributes in the TreeElement attribute list with the same name ("style"). This
makes the AttributeRenderer behave incorrectly, thinking that the first
attribute exists and needs to be saved for other elements.
There is a workaround for this issue. A page flow developer could call the
public TreeElement.getAttributeList() method and search through the list to see
if it contains a TreeHtmlAttributeInfo with the same attribute name and then
reset the value of that attribute.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira