X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fcom%2Findexdata%2Fmkjsf%2Fpazpar2%2FServiceProxyExtensions.java;h=6aeb6ffd174c8ab5825c266dc337f713c8804374;hb=dfcad4c5faeefc5915130c99f1508dee59820f2e;hp=d283b294989bd5e08f701380eda482273e38f150;hpb=7e91f0024a1da347fc373c3ff4e920fd00443c15;p=mkjsf-moved-to-github.git diff --git a/src/main/java/com/indexdata/mkjsf/pazpar2/ServiceProxyExtensions.java b/src/main/java/com/indexdata/mkjsf/pazpar2/ServiceProxyExtensions.java index d283b29..6aeb6ff 100644 --- a/src/main/java/com/indexdata/mkjsf/pazpar2/ServiceProxyExtensions.java +++ b/src/main/java/com/indexdata/mkjsf/pazpar2/ServiceProxyExtensions.java @@ -20,6 +20,7 @@ import com.indexdata.mkjsf.pazpar2.data.ResponseDataObject; import com.indexdata.mkjsf.pazpar2.data.ResponseParser; import com.indexdata.mkjsf.pazpar2.data.Responses; import com.indexdata.mkjsf.pazpar2.data.sp.CategoriesResponse; +import com.indexdata.mkjsf.pazpar2.data.sp.SpResponseDataObject; import com.indexdata.mkjsf.utils.Utils; @Named("pz2x") @SessionScoped @@ -158,17 +159,22 @@ public class ServiceProxyExtensions implements ServiceProxyInterface, Serializab public CategoriesResponse getCategories () { if (pz2.isServiceProxyService()) { - ResponseDataObject response = pz2.doCommand("categories"); - if (response.hasApplicationError()) { - logger.debug(response.getXml()); + SpResponseDataObject response = (SpResponseDataObject) pz2.doCommand("categories"); + if (response.unsupportedCommand()) { + logger.warn("Command 'categories' not supported by this Service Proxy"); return new CategoriesResponse(); } else { - try { - return (CategoriesResponse) response; - } catch (Exception e) { - e.printStackTrace(); + if (response.hasApplicationError()) { logger.debug(response.getXml()); return new CategoriesResponse(); + } else { + try { + return (CategoriesResponse) response; + } catch (Exception e) { + e.printStackTrace(); + logger.debug(response.getXml()); + return new CategoriesResponse(); + } } } } else {