Uploaded image for project: 'Directory ApacheDS'
  1. Directory ApacheDS
  2. DIRSERVER-649

transport explanations in NamingExceptions why searches fail back to the client

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.5.5
    • ldap
    • None
    • all

    Description

      Our ldap application has a custom partition and we only allow restricted searches on it.

      If the queries do not comply with our rules, we throw a NamingException.
      I guess good candidates for this are

      • CannotProceedException
      • NoPermissionException
        The good news is that I even can provide the exception constructor with some extra information
        that might help the searching user to adapt the query in order to succeed subsequently.

      Unfortunately, such exception explanation are ignored in SearchHandler.java and only
      "failed on search operation"
      is returned to the client

      Please find a diff below how this might be solved.

      Secondly, it would be great to be able to localize also the main error texts. Since our
      searches are only executed after a "bind" we do have the possibility to know the locale
      preferences from our own user-data-base.

      What do you think.

      — SearchHandler.java.orig 2006-06-16 09:56:02.000000000 +0200
      +++ SearchHandler.java 2006-06-16 09:57:28.000000000 +0200
      @@ -345,7 +345,13 @@

      LdapResult result = req.getResultResponse().getLdapResult();
      result.setResultCode( code );

      • result.setErrorMessage( msg );
        + String extraInfo="";
        + if (e.getMessage() != null)
        Unknown macro: {+ if (e.getMessage().trim().length()>0) { + extraInfo=": " + e.getMessage(); + }+ }

        + result.setErrorMessage( msg + extraInfo );

      if ( ( e.getResolvedName() != null )
      && ( ( code == ResultCodeEnum.NOSUCHOBJECT ) || ( code == ResultCodeEnum.ALIASPROBLEM )

      Attachments

        1. SearchHandler.java.patch
          0.8 kB
          Ralf Hauser

        Activity

          People

            Unassigned Unassigned
            ralfhauser Ralf Hauser
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: