From dd81ecdc49a400291d3b90d99b284be010525738 Mon Sep 17 00:00:00 2001
From: rsanchez <rsanchez@curisit.net>
Date: Mon, 03 Aug 2015 10:58:06 +0000
Subject: [PATCH] #2687 fix - Better error management when pack code is not valid

---
 securis/src/main/java/net/curisit/securis/services/ApiResource.java |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/securis/src/main/java/net/curisit/securis/services/ApiResource.java b/securis/src/main/java/net/curisit/securis/services/ApiResource.java
index 5106b43..1c30c6c 100644
--- a/securis/src/main/java/net/curisit/securis/services/ApiResource.java
+++ b/securis/src/main/java/net/curisit/securis/services/ApiResource.java
@@ -6,6 +6,7 @@
 
 import javax.inject.Inject;
 import javax.persistence.EntityManager;
+import javax.persistence.NoResultException;
 import javax.ws.rs.Consumes;
 import javax.ws.rs.GET;
 import javax.ws.rs.HeaderParam;
@@ -321,7 +322,12 @@
                 lic = new License();
             }
         }
-        Pack pack = em.createNamedQuery("pack-by-code", Pack.class).setParameter("code", req.getPackCode()).getSingleResult();
+        Pack pack;
+        try {
+            pack = em.createNamedQuery("pack-by-code", Pack.class).setParameter("code", req.getPackCode()).getSingleResult();
+        } catch (NoResultException e) {
+            throw new SeCurisServiceException(ErrorCodes.NOT_FOUND, "No pack found for code: " + req.getPackCode());
+        }
 
         if (!renew && pack.getNumAvailables() <= 0) {
             throw new SeCurisServiceException(ErrorCodes.NO_AVAILABLE_LICENSES, "The current pack has no licenses availables");

--
Gitblit v1.3.2