[richfaces-issues] [JBoss JIRA] Commented: (RF-3699) UITree.getTreeNode() returns always null

Thomas Wabner (JIRA) jira-events at lists.jboss.org
Mon Jun 16 06:39:33 EDT 2008


    [ http://jira.jboss.com/jira/browse/RF-3699?page=comments#action_12417255 ] 
            
Thomas Wabner commented on RF-3699:
-----------------------------------

Ok, but the documentation says nothing about that fact:

/**
  * Return the data object representing the node for the currently
  * selected row key, if any
  *
  * @return {@link TreeNode} instance corresponding to the current row key
  */

Maybe you could change this to this:

/**
  * Return the data object representing the node for the currently
  * selected row key, if any.
  * <p>
  * If you use a tree adaptor this method returns always null. Please use #getRowData() instead.
  * </p>
  *
  * @return {@link TreeNode} instance corresponding to the current row key
  */

In my mind the documentation should point out this. If no documentation gives me an hint it is an bug (not in code but then in the documentation).

But is this not a problem with the interfaces or the complete component hirarchy?

Of course, I don't know the right way to fix this.

> UITree.getTreeNode() returns always null
> ----------------------------------------
>
>                 Key: RF-3699
>                 URL: http://jira.jboss.com/jira/browse/RF-3699
>             Project: RichFaces
>          Issue Type: Bug
>    Affects Versions: 3.2.1
>         Environment: Tomcat, JFS SUN RI, Facelets
>            Reporter: Thomas Wabner
>
> If have a node selection listener on my rich:tree:
> <rich:tree switchType="server"
>                  nodeSelectListener="#{treeMgrt.onSelect}"
>                  >
>                  
>         <rich:recursiveTreeNodesAdaptor roots="#{treeMgrt.roots}" var="item" nodes="#{item.nodes}">
>           <rich:treeNode>
>             <h:outputText value="#{item}"/>
>           </rich:treeNode>
>           
>         </rich:recursiveTreeNodesAdaptor>
>       </rich:tree>  
> If the onSelect(NodeSelectedEvent event) is called I do the following:
> ....
> final UITree theTree = this.getTree(event);
> final TreeNode treeNode = theTree.getTreeNode();
> ....
> treeNode is evey time null. Also If I use the method with rowKey. I have had a look into the basic implementation and found follow code:
> StackingTreeModel.java:
> public TreeNode getTreeNode() {
>   if (isRowAvailable()) {
>      return null;
>   }
>   throw new IllegalStateException(
>      "No tree element available or row key not set!");
> }
> The method isRowAvailable() returns true and the result is a null object.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the richfaces-issues mailing list