如何在eclipse中使用xml-rpc设置权限

时间:2012-03-02 13:33:56

标签: java eclipse xml-rpc xwiki

我尝试创建一个新组,但我无法设置权限

我的代码是

    private static void createNewGroup() throws MalformedURLException, XmlRpcException { 

    XWikiXmlRpcClient rpc = new XWikiXmlRpcClient("http://localhost:8080/xwiki/xmlrpc/confluence"); 
    try { 

        rpc.login("Admin", "admin"); 

        // this create the group but without permissions 
        Page page = new Page();
        page.setSpace("XWiki");
        page.setParentId("XWiki.XWikiGroups");
        page.setTitle("XWikiUsersGroups");
        page.setId("XWiki.XWikiUsersGroup");
        page.setContent("{{include document=\"XWiki.XWikiGroupSheet\"/}}");
        rpc.storePage(page);

        //no puedo setearle permisos
        XWikiObject xobjgrp = new XWikiObject();
        xobjgrp.setClassName("XWiki.XWikiGroups");
        xobjgrp.setPageId("XWiki.XWikiUsersGroup");
        xobjgrp.setId(-1);
        xobjgrp.setProperty("levels", "View"); // this not work
        xobjgrp.setProperty("allow", true); //not work, too
        rpc.storeObject(xobjgrp);

    } catch (XmlRpcException e) { 
        System.out.println("invalid username/password was specified or communication problem or "); 
        System.out.println(e); 
    } finally { 
        rpc.logout(); 
    } 
    } 

我尝试以与创建用户相同的方式执行此操作,但我无法分配权限。

http://platform.xwiki.org/xwiki/bin/view/Features/XMLRPCJavaExamples#HUser:CreateANewUser

帮助!!

1 个答案:

答案 0 :(得分:0)

组和权限是存储在分离对象中的两个独立事物。 level和allow属性在XWiki.XWikiRights(文档相关权限)或XWiki.XWikiGlobalRights(空间和wiki相关权限)中设置。

您可以查看http://extensions.xwiki.org/xwiki/bin/view/Extension/Setting+Rights的示例,它是一个速度脚本,但它的逻辑相同。