mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

jvergara
24.52.2009 3445f16b500d5b98462f80e04429376bc2412a84
Fix for issue 3896 (Control Panel does not allow to create a sub-suffix)
Check the backend where the suffix must be created before displaying an error when analyzing the provided bind DN.
1 files modified
29 ■■■■■ changed files
opends/src/guitools/org/opends/guitools/controlpanel/ui/NewBaseDNPanel.java 29 ●●●●● patch | view | raw | blame | history
opends/src/guitools/org/opends/guitools/controlpanel/ui/NewBaseDNPanel.java
@@ -475,6 +475,7 @@
    Set<BackendDescriptor> backendObjects = desc.getBackends();
    Object o = backends.getSelectedItem();
    String backendName = String.valueOf(o);
    if (o == null)
    {
      errors.add(ERR_CTRL_PANEL_NO_BACKENDS_SELECTED.get());
@@ -482,7 +483,7 @@
    }
    else if (o.equals(NEW_BACKEND))
    {
      String backendName = newBackend.getText().trim();
      backendName = newBackend.getText().trim();
      if (backendName.length() == 0)
      {
        errors.add(ERR_NEW_BACKEND_NAME_REQUIRED.get());
@@ -529,19 +530,25 @@
            }
            else if (baseDN.getDn().isAncestorOf(theDN))
            {
              errors.add(ERR_BASE_DN_ANCESTOR_EXISTS.get(
                  baseDN.getDn().toString()));
              setPrimaryInvalid(lDirectoryBaseDN);
              baseDNAlreadyDefined = true;
              break;
              if (backendName.equalsIgnoreCase(backend.getBackendID()))
              {
                errors.add(ERR_BASE_DN_ANCESTOR_EXISTS.get(
                    baseDN.getDn().toString()));
                setPrimaryInvalid(lDirectoryBaseDN);
                baseDNAlreadyDefined = true;
                break;
              }
            }
            else if (theDN.isAncestorOf(baseDN.getDn()))
            {
              errors.add(ERR_BASE_DN_DN_IS_ANCESTOR_OF.get(
                  baseDN.getDn().toString()));
              setPrimaryInvalid(lDirectoryBaseDN);
              baseDNAlreadyDefined = true;
              break;
              if (backendName.equalsIgnoreCase(backend.getBackendID()))
              {
                errors.add(ERR_BASE_DN_DN_IS_ANCESTOR_OF.get(
                    baseDN.getDn().toString()));
                setPrimaryInvalid(lDirectoryBaseDN);
                baseDNAlreadyDefined = true;
                break;
              }
            }
          }
          if (baseDNAlreadyDefined)