summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
Diffstat (limited to 'base')
-rw-r--r--base/common/python/pki/key.py5
-rw-r--r--base/common/src/com/netscape/certsrv/key/KeyRequestInfo.java1
-rw-r--r--base/server/cms/src/com/netscape/cms/servlet/key/KeyRequestDAO.java11
3 files changed, 12 insertions, 5 deletions
diff --git a/base/common/python/pki/key.py b/base/common/python/pki/key.py
index 337ae76ff..5a24c2a31 100644
--- a/base/common/python/pki/key.py
+++ b/base/common/python/pki/key.py
@@ -183,7 +183,10 @@ class KeyRequestInfo(object):
key_request_info = cls()
key_request_info.request_url = attr_list['requestURL']
key_request_info.request_type = attr_list['requestType']
- key_request_info.key_url = attr_list['keyURL']
+
+ if 'keyURL' in attr_list:
+ key_request_info.key_url = attr_list['keyURL']
+
key_request_info.request_status = attr_list['requestStatus']
return key_request_info
diff --git a/base/common/src/com/netscape/certsrv/key/KeyRequestInfo.java b/base/common/src/com/netscape/certsrv/key/KeyRequestInfo.java
index d9e5fbf1c..45f8b1335 100644
--- a/base/common/src/com/netscape/certsrv/key/KeyRequestInfo.java
+++ b/base/common/src/com/netscape/certsrv/key/KeyRequestInfo.java
@@ -55,6 +55,7 @@ public class KeyRequestInfo extends CMSRequestInfo {
* @return the key ID in the keyURL
*/
public KeyId getKeyId() {
+ if (keyURL == null) return null;
String id = keyURL.substring(keyURL.lastIndexOf("/") + 1);
return new KeyId(id);
}
diff --git a/base/server/cms/src/com/netscape/cms/servlet/key/KeyRequestDAO.java b/base/server/cms/src/com/netscape/cms/servlet/key/KeyRequestDAO.java
index 3686ec776..dd0393aab 100644
--- a/base/server/cms/src/com/netscape/cms/servlet/key/KeyRequestDAO.java
+++ b/base/server/cms/src/com/netscape/cms/servlet/key/KeyRequestDAO.java
@@ -351,11 +351,14 @@ public class KeyRequestDAO extends CMSRequestDAO {
ret.setRequestURL(reqBuilder.build().toString());
Path keyPath = KeyResource.class.getAnnotation(Path.class);
- String kid = request.getExtDataInString("keyrecord");
+ String keyID = request.getExtDataInString("keyrecord");
- UriBuilder keyBuilder = uriInfo.getBaseUriBuilder();
- keyBuilder.path(keyPath.value() + "/" + kid);
- ret.setKeyURL(keyBuilder.build().toString());
+ if (keyID != null) {
+ // set key URL only if key ID is available
+ UriBuilder keyBuilder = uriInfo.getBaseUriBuilder();
+ keyBuilder.path(keyPath.value() + "/" + keyID);
+ ret.setKeyURL(keyBuilder.build().toString());
+ }
return ret;
}