Quick BI独立部署环境调用接口创建用户组,运行报错“com.alibaba.quickbi.openapi.core.exception.ClientException: error response: errorCode: AE0150020002, errorMsg: 用户组不存在”
更新时间:
问题描述
Quick BI独立部署环境调用接口“/openapi/v2/usergroup”创建用户组,运行报错“com.alibaba.quickbi.openapi.core.exception.ClientException: error response: errorCode: AE0150020002, errorMsg: 用户组不存在”。调用代码如下:
HttpRequest httpRequest2 = HttpRequest.build()
.setUri("/openapi/v2/usergroup")
.setHttpContentType(FormatType.JSON)
.setMethod(HttpMethod.POST)
.addParameter("usergroupName", "testGroup2")
.addParameter("parentUsergroupId", "-1");
String response2 = apiClient.syncExecute(httpRequest2); // 这行报的错
}
具体的代码报错如下:
com.alibaba.quickbi.openapi.core.exception.ClientException: error response: errorCode: AE0150020002, errorMsg: 用户组不存在, traceId : 98828662-4d49-4f31-b61e-5f4a119f0920
at com.alibaba.quickbi.openapi.client.OpenApiClientHttpClient.parseHttpResponse(OpenApiClientHttpClient.java:167)
at com.alibaba.quickbi.openapi.client.OpenApiClientHttpClient.syncExecute(OpenApiClientHttpClient.java:112)
at com.bespin.ssoportal.portal.controller.ImgController.adjustmentUserGroup(ImgController.java:110)
at com.bespin.ssoportal.portal.controller.ImgController.uploadImg(ImgController.java:74)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
问题原因
参数parentUsergroupId传递不对导致。如果客户将用户组添加到组织的根目录,默认的根目录“所有组”UsergroupId为-1,但是部分独立部署客户会将根目录的UsergroupId修改。
解决方案
客户将组织根目录“所有组”的GroupID修改,不是-1。可以调用接口/openapi/v2/usergroup (GET)查询⽤户分组列表,其返回值中包含根目录“所有组”的UsergroupId:
然后将该查询到的UsergroupId传递到/openapi/v2/usergroup接口的parentUsergroupId中即可。
适用于
- Quick BI
文档内容是否对您有帮助?