From 75a710630a2d6271231a31eed5fa72fccfcb8723 Mon Sep 17 00:00:00 2001
From: Violette Roche-Montane <violette.roche-montane@forgerock.com>
Date: Mon, 10 Jun 2013 12:46:50 +0000
Subject: [PATCH] CR-1816 OPENDJ-940 Import-ldif NPE if base entry contains invalid attribute values and skipDNValidation is set - Removed NullPointerException message and it sends now a DirectoryException.

---
 opendj-sdk/opends/src/server/org/opends/server/tools/ImportLDIF.java |   15 ++++++++++++---
 1 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/opendj-sdk/opends/src/server/org/opends/server/tools/ImportLDIF.java b/opendj-sdk/opends/src/server/org/opends/server/tools/ImportLDIF.java
index 45ab123..052c9f4 100644
--- a/opendj-sdk/opends/src/server/org/opends/server/tools/ImportLDIF.java
+++ b/opendj-sdk/opends/src/server/org/opends/server/tools/ImportLDIF.java
@@ -72,6 +72,7 @@
 import org.opends.server.types.LDIFImportResult;
 import org.opends.server.types.NullOutputStream;
 import org.opends.server.types.RawAttribute;
+import org.opends.server.types.ResultCode;
 import org.opends.server.types.SearchFilter;
 import org.opends.server.util.BuildVersion;
 import org.opends.server.util.args.ArgumentException;
@@ -1540,8 +1541,17 @@
     }
     catch (DirectoryException de)
     {
-      Message message =
-          ERR_LDIFIMPORT_ERROR_DURING_IMPORT.get(de.getMessageObject());
+      Message message = null;
+      if (de.getResultCode() == ResultCode.CONSTRAINT_VIOLATION)
+      {
+        message =
+            ERR_LDIFIMPORT_ERROR_DURING_IMPORT
+                .get(ERR_LDIFIMPORT_ERROR_CONSTRAINT_VIOLATION.get());
+      }
+      else
+      {
+        message = ERR_LDIFIMPORT_ERROR_DURING_IMPORT.get(de.getMessageObject());
+      }
       logError(message);
       retCode = 1;
     }
@@ -1550,7 +1560,6 @@
       Message message =
           ERR_LDIFIMPORT_ERROR_DURING_IMPORT.get(getExceptionMessage(e));
       logError(message);
-e.printStackTrace();
       retCode = 1;
     }
 

--
Gitblit v1.10.0