2017-05-08 40 views
0

我想創建一個簡單的下拉列表,其中包含我們的Domino目錄中的所有用戶(names.nsf) - 我們在哪裏使用ExtLib中的Dojo Namepicker,但是存在多個問題我們的華爲手機,但這又是一個故事:o) - 無論我嘗試什麼,我只是回來一個空的列表。下面是中使用XPages代碼:在JavaScript中獲取Domino目錄中的用戶列表

    <xp:comboBox value="#{document1.betreuerIn}" style="width:350px" 
        id="comboBox1" required="true" defaultValue="#{javascript:sessionScope._stdCommonUserName}"> 
        <xp:selectItems> 
         <xp:this.value><![CDATA[#{javascript:allPeople()}]]></xp:this.value> 
        </xp:selectItems> 
       </xp:comboBox> 

,這裏的功能allPeople:

var mydb = new Array (@DbName()[0], "names.nsf"); 
var myPeople = new Array (@DbColumn(mydb, "($VIMPeople)", 1)); 
return myPeople; 

var mydb = new Array (@DbName()[0], "names.nsf"); 
return @DbColumn(mydb, "($VIMPeople", 1); 

我總是得到一個空的列表了。 mydb包含一個服務器和names.nsf數據庫。視圖($ VIMPeople)存在於Domino目錄中。

據此:http://xpageswiki.com/apps/wiki-xpages/wiki-xpages.nsf/dx/Work_with_DbColumn_and_DbLookup它應該工作?

我在做什麼錯?

+0

檢查Names.nsf中的ACL,以確保匿名1.您或身份驗證的用戶有讀者或更高訪問和2高級選項卡允許閱讀器或更高的瀏覽器訪問權限。 – Newbs

+0

您也可以考慮使用緩存結果的applicationScope bean。您目錄中的人員不會經常更改。我們做了一個具有重置功能的管理員在他們更新人員時使用 – stwissel

+0

我是名稱數據庫的管理員(匿名有讀取器訪問權限),只要我收到某些東西時會緩存結果Stephan :) –

回答

-1

視圖中有多少個文檔? 因爲你得到一個空列表的可能選項之一是你超過了64K的限制。

如果是這樣,也許這將幫助你:

How to avoid the 64k limit when retrieving data from a view column?

+0

你的回答似乎更適合於對這個問題發表評論,因爲它要求澄清並指出另一個答案,而不是在這裏回答問題 –