2017-05-08 46 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

你的回答似乎更适合于对这个问题发表评论,因为它要求澄清并指出另一个答案,而不是在这里回答问题 –