Xpages sessionAsSigner和domino数据源

时间:2012-04-24 20:16:14

标签: xpages

我在特定数据库中有一个公共文档,它是这样创建的:

<xp:dominoDocument var="newDoc" formName="frmMyForm" 
    databaseName="#{javascript:applicationScope.aspMyDBPath}">
</xp:dominoDocument>

该数据库的ACL设置为Anonymous as Reader,具有对公共文档的写访问权限。我无法保存此文档,因为Xpages作为Web用户运行。如果我作为代理签名者运行并且使用sessionAsSigner初始化数据库,我可以保存它。如何使用dominoDocument数据源执行此操作?有什么想法吗?

任何帮助将不胜感激。我不想让编辑级访问此数据库只是为了解决这个问题。

2 个答案:

答案 0 :(得分:4)

您可以为无法访问数据库的用户提供以这种方式创建公共文档的可能性:

  1. 使用 $ PublicAccess 字段(文本,值“1”)将表单添加到数据库中
  2. 启用
  3. 格式的“可用于公共访问”属性
  4. 将属性“computewithform = both”添加到数据源
  5. 将Xpage的安全设置更改为“允许公共访问”
  6. 更改DB的ACL并允许创建和阅读公共文档
  7. 这也适用于读者。

    希望这有帮助

    斯文

答案 1 :(得分:1)

应该可以使用dataContext。在XPage的属性中设置一个新的DataContext并将其设置为正确的DB / Doc,但使用sessionAsSigner返回数据库。

您无法轻松访问表单上的字段以获取任何数据控件,您需要为每个字段手动输入EL。