Richfaces树问题-不能强制转换为javax.swing.tree.TreeNode



我使用的是Richfaces 3、Facelets (jsf 2之前的版本)和Tomcat。我正在添加一个Richfaces树到我的页面,但得到这个错误:

org.richfaces.model。treendeimpl不能强制转换为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>

任何想法?谢谢!

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

代替

import javax.swing.tree.TreeNode;

import org.richfaces.model.TreeNode;

其他读者:

javax.swing.tree.TreeNode在Richfaces展示中使用:http://showcase.richfaces.org/richfaces/component-sample.jsf?demo=tree&皮肤=蓝天

似乎两者都有可能。文档说明:

数据模型必须是org.richfaces.model.TreeNode接口、org.richfaces.model. treedatmodel接口或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 {

相关内容

  • 没有找到相关文章

最新更新