rich:tree is rendering tostring of DataHolderTreeNodeImpl instedof treedata name
selvarajc Dec 12, 2013 4:18 PMHi team,
I am using richfaces 4.3.4 and seam 2.3.1 .
Problem: rich:tree is rendering tostring of DataHolderTreeNodeImpl instedof treedata name
Note :Same code is working fine in richfaces 3.3.3
public class DataHolderTreeNodeImpl extends TreeNodeImpl{ private Object data; private TreeNode parent; public DataHolderTreeNodeImpl() { super(); } public DataHolderTreeNodeImpl(boolean leaf, Object data) { super(leaf); this.data = data; } public Object getData() { return data; } public final void setData(Object data) { this.data = data; } public final TreeNode getParent() { return parent; } public final void setParent(TreeNode parent) { this.parent = parent; } public Iterator getChildren(){ return getChildrenKeysIterator(); } }
Here object data can be TreeNodeData or XMLTreenodeData
public class TreeNodeData { //The node type indication ( shelf/slot/card..); private String classType = ""; // can represent PKId of the instance of classtype private String id = ""; //Indicates the type of the node such as edit/list/nonavigation private String type = "navigate"; //Display Name in the tree private String name = ""; //PkId field in the database. Used to for traverse the page from the Tree. private String pkIdName = ""; //Table Name of the Node data if present. private String tableName = ""; public String getPkIdName() { return pkIdName; } public void setPkIdName(String pkIdName) { this.pkIdName = pkIdName; } public String getTableName() { return tableName; } public void setTableName(String tableName) { this.tableName = tableName; } public TreeNodeData(String classType, String id, String type, String name) { setClassType(classType); setId(id); setType(type); setName(name); } public TreeNodeData() { // TODO Auto-generated constructor stub } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getType() { return type; } public void setType(String type) { this.type = type; } public String getClassType() { return classType; } public void setClassType(String classType) { this.classType = classType; } public String getId() { return id; } public void setId(String id) { this.id = id; } }
Xhtml tag:
<rich:tree toggleType="ajax" binding="#{platformTreeBean.richTree}" value="#{platformTreeBean.treeNode}" var="item" iconCollapsed ="/img/tree_folder.gif" iconLeaf="/img/application.gif" iconExpanded ="/img/tree_folder.gif" id="platTreeId" toggleListener ="#{platformTreeBean.processExpansion}" > <rich:treeNode type="root"> <s:link view="/ServersList.xhtml" target="platTreeActionFrame"> <f:param name="nodeValue" value="#{item.name}"/> <h:outputText value="#{item.name}"></h:outputText> </s:link> </rich:treeNode> </rich:tree>