Java &引用;您未经授权……”;导入DXL文件时

Java &引用;您未经授权……”;导入DXL文件时,java,security,import,xpages,lotus-domino,Java,Security,Import,Xpages,Lotus Domino,我对基于java的DXL导入有问题 我们希望通过Java框架维护属性文件。我正在使用文件系统上的临时文件(我在本地服务器上工作)。我正在将新属性文件导出到文件系统,在同一文件夹中生成一个DXL文件,然后尝试将DXL导入到我的数据库中 我已经完成了导入器的几个选项,我们正在使用sessionAsSignerWithFullAccess创建流和导入器。该代码使用服务器管理员的ID签名,该管理员拥有对所有内容的完全访问权限 导入DXL时,我只收到错误消息“DXL导入操作失败”,导入程序的错误日志显示我

我对基于java的DXL导入有问题

我们希望通过Java框架维护属性文件。我正在使用文件系统上的临时文件(我在本地服务器上工作)。我正在将新属性文件导出到文件系统,在同一文件夹中生成一个DXL文件,然后尝试将DXL导入到我的数据库中

我已经完成了导入器的几个选项,我们正在使用sessionAsSignerWithFullAccess创建流和导入器。该代码使用服务器管理员的ID签名,该管理员拥有对所有内容的完全访问权限

导入DXL时,我只收到错误消息“DXL导入操作失败”,导入程序的错误日志显示我无权执行此操作

你知道有什么问题吗?从我的角度来看,我不能给我的用户更多的服务器权限

以下是导入功能的代码:

private void importDXLFile(String filepath) {
    String dxlPath = filepath.replaceAll(".properties", ".dxl");
    DxlImporter importer = null;
    Stream stream = null;

    System.out.println("dxlPath: " + dxlPath);

    try {           
        stream = BCCJsfUtil.getCurrentSessionAsSignerWithFullAccess(FacesContextEx.getCurrentInstance()).createStream();
        if (!stream.open(dxlPath, "ISO-8859-1")) {
            System.out.println("Cannot read " + dxlPath + " from server");
        }
        System.out.println("User: " + BCCJsfUtil.getCurrentSessionAsSignerWithFullAccess(FacesContextEx.getCurrentInstance()).getEffectiveUserName());
        importer = BCCJsfUtil.getCurrentSessionAsSignerWithFullAccess(FacesContextEx.getCurrentInstance()).createDxlImporter();
        importer.setReplaceDbProperties(false);
        importer.setReplicaRequiredForReplaceOrUpdate(false);
        importer.setDesignImportOption(DxlImporter.DXLIMPORTOPTION_REPLACE_ELSE_CREATE);
        importer.setInputValidationOption(DxlImporter.DXLVALIDATIONOPTION_VALIDATE_NEVER);
        importer.setExitOnFirstFatalError(false);
        importer.importDxl(stream.readText(), BCCJsfUtil.getCurrentDatabase());

        stream.close();
    } catch (NotesException e) {
        e.printStackTrace();
        try {
            System.out.println("Log: " + importer.getLog());
            System.out.println("LogComment: " + importer.getLogComment());

        } catch (NotesException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }

    }
}
正如你所看到的,我尝试了几个选项,希望它能改变任何事情,但总是相同的错误消息。 生成的DXL似乎有效,因为我们可以使用Ytria手动导入它

我希望有人有主意。任何帮助都将不胜感激

提前谢谢


Matthias

请检查您的ACL设置:
是否将“最大internet名称和密码”设置为“管理器”或“设计器”?

请检查您的ACL设置:
“最大internet名称和密码”是否设置为“管理器”或“设计器”?

java安全属性文件的设置是什么?BCCJsfUtil.getCurrentDatabase()是否使用sessionAsSigner获取数据库?数据库的函数未使用sessionAsSigner获取数据库。我试图通过sessionAsSigner.getCurrentDatabase获取它,但没有更改任何有关策略的内容。我没有更改任何内容,这是安装过程中创建的标准文件。Most设置为授予所有权限。java安全属性文件的设置是什么?BCCJsfUtil.getCurrentDatabase()是否使用sessionAsSigner获取数据库?数据库的函数未使用sessionAsSigner获取数据库。我试图通过sessionAsSigner.getCurrentDatabase获取它,但没有更改任何有关策略的内容。我没有更改任何内容,这是安装过程中创建的标准文件。Most设置为授予所有权限。好的,就是这样,我们已经将其设置为编辑器。设计师和经理工作。谢谢=)好的,就是这样,我们已经把它设置为编辑器。设计师和经理工作。谢谢=)