2 Replies Latest reply on May 7, 2014 12:39 AM by user3765977

    OUD Plugin API: changing ModifyRequest modifications




      I have developed a plugin for OUD 11gR2 PS2 using the plugin API.

      The plugin intercepts MOD requests and edits the list of Modifications.

      It does this by implementing the following in handleModify(requestContext, request, resultHandler):


      1. Obtains the List of Modifications via List<Modification> mods = request.getModifications()
      2. Creates a new ModifyRequest via newModifyRequest = requestContext.getRequestBuilder(false).newModifyRequest(request.getName())
      3. Loops through the List of Modifications and adds them to the new ModifyRequest via newModifyRequest.addModification(mods.get(i))
      4. During the loop, an extra Modification is created and added to the newModifyRequest (this has to be placed in a specific location within the list of Modifications)
      5. Calls super.handleModify(requestContext, newModifyRequest, resultHandler)


      When I install the plugin and perform and ldapmodify, the plugin executes the modify ok but does not finish cleanly. The ldapmodify command shows:


      MODIFY operation failed

      Result Code:  80 (Other)

      Additional Information:  An internal error has occurred within the Directory Server while processing the operation



      a. Does the API support what I am trying to do?

      b. Why would I get an error even though the modify request is processing correctly?

      c. Is there some debugging that I can switch on to see what is going on in the API/engine?