Blob Blame History Raw
commit b65d6a8095b864c912e2e0884e9b50f58353805b
Author: Ade Lee <alee@redhat.com>
Date:   Thu Jul 16 16:48:51 2015 -0400

    Fix exception when talking to dogtag 9 systems
    
    When getting a token from the security domain for a Dogtag 9
    system, we first attempt to reach the REST interfaces.  When this
    fails (with 404 exception), we catch the exception and try the
    old interfaces.
    
    The exception being thrown has been changed from the deprecated
    ClientResponseFailure to being wrapped in a PKIException, so the
    code catching the exception needs to be modified accordingly.
    
    Ticket 1495

diff --git a/base/server/cms/src/com/netscape/cms/servlet/csadmin/ConfigurationUtils.java b/base/server/cms/src/com/netscape/cms/servlet/csadmin/ConfigurationUtils.java
index 5566e91..c8ab38c 100644
--- a/base/server/cms/src/com/netscape/cms/servlet/csadmin/ConfigurationUtils.java
+++ b/base/server/cms/src/com/netscape/cms/servlet/csadmin/ConfigurationUtils.java
@@ -89,7 +89,6 @@ import netscape.security.x509.X509CertImpl;
 import netscape.security.x509.X509Key;
 
 import org.apache.velocity.context.Context;
-import org.jboss.resteasy.client.ClientResponseFailure;
 import org.mozilla.jss.CryptoManager;
 import org.mozilla.jss.CryptoManager.NicknameConflictException;
 import org.mozilla.jss.CryptoManager.NotInitializedException;
@@ -152,6 +151,7 @@ import com.netscape.certsrv.base.EBaseException;
 import com.netscape.certsrv.base.EPropertyNotFound;
 import com.netscape.certsrv.base.IConfigStore;
 import com.netscape.certsrv.base.ISubsystem;
+import com.netscape.certsrv.base.PKIException;
 import com.netscape.certsrv.base.ResourceNotFoundException;
 import com.netscape.certsrv.ca.ICertificateAuthority;
 import com.netscape.certsrv.client.ClientConfig;
@@ -372,17 +372,14 @@ public class ConfigurationUtils {
             InstallToken token = sdClient.getInstallToken(sdhost, csType);
             accountClient.logout();
             return token.getToken();
-
-        } catch (ClientResponseFailure e) {
-
-            if (e.getResponse().getResponseStatus() == Response.Status.NOT_FOUND) {
+        } catch (PKIException e) {
+            if (e.getCode() == Response.Status.NOT_FOUND.getStatusCode()) {
                 // try the old servlet
                 CMS.debug("Getting old cookie");
                 String tokenString = getOldCookie(sdhost, sdport, user, passwd);
                 CMS.debug("Token: " + tokenString);
                 return tokenString;
             }
-
             throw e;
         }
     }