wso2 emm mdm-admin休息webservices

时间:2016-06-09 09:44:13

标签: wso2 wso2carbon wso2-emm

美好的一天,

我在向mdm-admin

添加Rest服务时遇到问题

我遇到了mdm-android- *的麻烦我在permission.xml文件中创建了服务和引用

在mdm-admin中创建一个休息服务,它有下面的sefinitin

SELECT name || ' (' || SUBSTR( profession, 1,, 1 ) || ')'
FROM   your_table;

它是应用程序方法获取列表的克隆,只更改了路径和函数名称。

当我部署它时。我的webapp返回 404 错误状态代码。当我尝试调用函数

要复制此内容,请下载v2.0.1使用Netbeans打开,修改@GET @Path("{type}/{id}/logs") public List<? extends Application> getDeviceLogs( @PathParam("type") String type, @PathParam("id") String id) throws MDMAPIException { List<Application> applications; ApplicationManagementProviderService appManagerConnector; DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); try { deviceIdentifier.setType(type); deviceIdentifier.setId(id); appManagerConnector = MDMAPIUtils.getAppManagementService(); applications = appManagerConnector.getApplicationListForDevice(deviceIdentifier); } catch (ApplicationManagementException e) { String msg = "Error occurred while fetching the apps of the device."; log.error(msg, e); throw new MDMAPIException(msg, e); } return applications; } } 复制并粘贴其余功能之一,重命名功能Deploy并调用该新功能

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

您将收到404,因为您必须向用户提供nely aded rest api权限。

请在用户角色中包含相关权限,然后重试。

获取更多信息documentation

答案 1 :(得分:0)

您的代码段对我没有任何问题。您需要在permission.xml中添加权限条目,如下所示才能使其正常工作

<Permission>
    <name>log device</name>
    <path>/device-mgt/emm-admin/devices/logs</path>
    <url>/operations/*/*/logs</url>
    <method>GET</method>
</Permission>

我使用的curl命令如下。不要忘记将内容类型添加为application / json。

curl -X GET -H "Content-Type: application/json" -H "Authorization: Bearer 3c28103c1992c9e57d7091fb9f38732e" -k -v https://localhost:9443/mdm-admin/operations/android/000000000000000/logs