catalog/drivers/driverEntitlementViewValues/listV2 internal exception

Hi!
I get an internal exception:
{"Fault": {
   "Code":    {
      "Value": "Sender",
      "Subcode": {"Value": "Internal exception occurred processing REST service"}
   },
   "Reason": {"Text": "Internal Error. Please contact Administrator."}
}}
when trying to call this API with:
POST https://<server>/IDM/rest/catalog/drivers/driverEntitlementViewValues/listV2?nextIndex=1&pageSize=20&query=cn=* HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: application/json
Authorization: Bearer <bearer>
Content-Length: 2
Host: <host>
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
{}
 
The catalina states:
ERROR [com.netiq.idm.rest.catalog.DriverService] (https-jsse-nio-8443-exec-10) [RBPM] Internal Error. Please contact Administrator.
java.lang.NullPointerException
        at com.netiq.idm.rest.catalog.DriverService.getDriverEntitlementViewValuesWithPagination(DriverService.java:850)
        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)
        at com.sun.jersey.server.impl.model.method.dispatch.AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(AbstractResourceMethodDispatchProvider.java:168)
        at com.sun.jersey.server.impl.model.method.dispatch.ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.java:67)
        at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.accept(HttpMethodRule.java:259)
 
Has anyone used this API?
 
The documentation is rather sparse.
(https://www.netiq.com/documentation/identity-manager-developer/rest-api-documentation/idmappsdoc/#/)
What is the syntax for the query?
How do I identify the Node?
Is my call incorrect?
Also tried with this in body:
{"name":"cn=UserApplication,cn=Driver Set,ou=System,o=IDM"}
and also with only cn value as name.
 
BR
/Thomas
 
 
  • Verified Answer

    Hi Thomas,
    I also noticed that mandatory parameter handling is a bit strange in UA REST interface. And yes, I assume that you are missing a parameter by hitting NULL Pointer Exception (which means there is no mandatory parameter handling at all, but hey... )

    Anyway, are you trying to read the entitlement values of a specific driver? If so try using "/drivers/entitlementValues/list". To be honest I haven't fully understand the idea behind the view-methods but I decided to avoid them as much as possible and for now I always got "it" working. If you use the method provided above you just need to POST an ID node containing the driver DN (e.g.: "{id:cn=mydriver,cn=driverset,o=system})".

    regards
    Daniel

    Edit: And yes, the documentation does not always provide a working example of the request body. Go into the userapp, find the place where the info you are looking for is provided and switch your browser to developer mode

  • Thanks, got it working.
    Still don't understand the documentation with a large set of json under the 'Parameters' heading. As if one could filter on all those values.
    /T