【问题标题】:Richfaces tree issue - cannot be cast to javax.swing.tree.TreeNodeRichfaces 树问题 - 无法转换为 javax.swing.tree.TreeNode
【发布时间】:2011-10-22 15:48:15
【问题描述】:

我正在使用 Richfaces 3、Facelets(JSF 2 之前的版本)和 Tomcat。我正在向我的页面添加 Richfaces 树,但出现此错误:

org.richfaces.model.TreeNodeImpl 不能转换为 javax.swing.tree.TreeNode

这是我用来构建节点列表的代码:

 int i = 0;
 TreeNodeImpl<String> rootNode = new TreeNodeImpl<String>();
 for( Recommendation recommendation : m_recommendationsBean.getRecommendations() )
 {
    final TreeNodeImpl<String> childNode = new TreeNodeImpl<String>();
    childNode.setData( recommendation.getEventDescription() );
    rootNode.addChild( i, childNode );
    i++;
 }
 m_treeNodes.add( rootNode );

然后:

   @NotNull
   public List<TreeNodeImpl<String>> getTreeNodes ()
   {
      return m_treeNodes;
   }

我的页面只有这个:

<rich:tree value="#{DmsRecommendationsPage.treeNodes}" var="recommendation">
   <rich:treeNode>
      #{recommendation}
   </rich:treeNode>
</rich:tree>

有什么想法吗?谢谢!

【问题讨论】:

    标签: jsf tomcat richfaces


    【解决方案1】:

    对于其他读者:

    这里的 Richfaces 展示中使用了 javax.swing.tree.TreeNode: http://showcase.richfaces.org/richfaces/component-sample.jsf?demo=tree&skin=blueSky

    似乎两者都有可能。 documentation 状态:

    数据模型必须是 org.richfaces.model.TreeNode 接口,org.richfaces.model.TreeDataModel 接口,或 javax.swing.tree.TreeNode 接口。

    package org.richfaces.demo.tree.model;
    
    import java.util.ArrayList;
    import java.util.Enumeration;
    import java.util.List;
    
    import javax.swing.tree.TreeNode;
    
    import com.google.common.collect.Iterators;
    
    public class Country extends NamedNode implements TreeNode {
    

    【讨论】:

      【解决方案2】:

      检查您的进口。 RichFaces 自己的org.richfaces.model.TreeNode 接口应该在属性声明中使用。在声明 TreeNode 时,您可能选择了 IDE 自动建议的第一个选项来导入 Swing 而不是 RichFaces。

      替换

      import javax.swing.tree.TreeNode;
      

      通过

      import org.richfaces.model.TreeNode;
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-05-12
        • 2020-03-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多