2011-08-04 31 views
2

此問題主要針對PrimeFaces開發團隊,但也許其他人知道解決方法。我無法在PrimeFaces支持論壇上傳截圖,但我可以在這裏鏈接到我的問題。PrimeFaces 3.0 - PPR上的JavaScript錯誤<p:tree>

發佈就到這裏PrimeFaces論壇: http://www.primefaces.org/forum/viewtopic.php?f=3&t=14203&sid=5a4e3dad45f2978e9a896fc5fdb17d50

使用PrimeFaces 3.0 <p:tree>組件時,我已經遇到JavaScript錯誤。我已經舉了一個非常簡單的例子來說明:

包含該樹的頁面首次成功呈現。

注意:expanded="true"屬性被完全忽略,但這是一個不同的問題。

initial page draw - OK

展開在樹中的任何節點。

node is expanded on tree

最後,我點擊一個命令按鈕,什麼也不做,除了引發部分頁面渲染<p:tree>的頁面上。發生JavaScript錯誤。

PPR causes JavaScript error

錯誤代碼文本是:

Line: 17 
Char: 5725 
Error: Could not complete the operation due to error 80020101 
Code: 0 

下面是從一個facelet頁的相關代碼:

<h:form id="contentForm"> 
    <p:outputPanel layout="block"> 
     <p:commandButton 
       ajax="true" 
       process="@this" 
       update="treeArea" 
       value="Redraw Tree" /> 
    </p:outputPanel> 

    <p:outputPanel id="treeArea" layout="block"> 
     <p:tree 
       value="#{treeTestBean.trivialTreeRoot}" 
       var="node" 
       expanded="true" 
       update="selectedEntityName"> 
      <p:treeNode> 
       <h:outputText value="#{node}" /> 
      </p:treeNode> 
     </p:tree> 
    </p:outputPanel> 
</h:form> 

這裏是從bean的相關代碼:

@SuppressWarnings("unused") 
public TreeNode getTrivialTreeRoot() { 
    TreeNode root = new DefaultTreeNode("Root", null); 
    TreeNode node0 = new DefaultTreeNode("Node 0", root); 
    TreeNode node1 = new DefaultTreeNode("Node 1", root); 
    TreeNode node2 = new DefaultTreeNode("Node 2", root); 

    TreeNode node00 = new DefaultTreeNode("Node 00", node0); 
    TreeNode node01 = new DefaultTreeNode("Node 01", node0); 

    TreeNode node010 = new DefaultTreeNode("Node 010", node01); 
    return root; 
} 

我正在使用Mojarra 2.1.1和Tomcat 7.0.14的PrimeFaces 3.0-M3-SNAPSHOT。瀏覽器是IE 7.

任何想法如何解決這個問題?這對我來說是一個炫耀者,因爲我需要一種方法來在我的webapp中顯示樹視圖。一旦發生JavaScript錯誤,它會使頁面上的所有其他PrimeFaces組件無響應。

回答

2

根據PrimeFaces引領this reply

在問題跟蹤已經登錄,應固定在M3