diff --git a/source/java/org/alfresco/repo/search/impl/lucene/SolrJSONResultSet.java b/source/java/org/alfresco/repo/search/impl/lucene/SolrJSONResultSet.java index 07b78a1862..9f22e9dd2c 100644 --- a/source/java/org/alfresco/repo/search/impl/lucene/SolrJSONResultSet.java +++ b/source/java/org/alfresco/repo/search/impl/lucene/SolrJSONResultSet.java @@ -407,7 +407,15 @@ public class SolrJSONResultSet implements ResultSet, JSONResult for(Iterator it = facet_ranges.keys(); it.hasNext();) { String fieldName = (String) it.next(); - String end = facet_ranges.getJSONObject(fieldName).getString("end"); + String end = ""; + try + { + end = facet_ranges.getJSONObject(fieldName).getString("end"); + } + catch(JSONException e) + { + end = String.valueOf(facet_ranges.getJSONObject(fieldName).getInt("end")); + } JSONArray rangeCollection = facet_ranges.getJSONObject(fieldName).getJSONArray("counts"); List> buckets = new ArrayList>(); for(int i = 0; i < rangeCollection.length(); i+=2) @@ -419,11 +427,11 @@ public class SolrJSONResultSet implements ResultSet, JSONResult } Map rangeMap = new HashMap(3); String rangeFrom = rangeCollection.getString(i); - String facetRangeCount = rangeCollection.getString(i+1); + int facetRangeCount = rangeCollection.getInt(i+1); String rangeTo = (i+2 < rangeCollection.length() ? rangeCollection.getString(i+2):end); String label = rangeFrom + " - " + rangeTo; rangeMap.put(GenericFacetResponse.LABEL, label); - rangeMap.put(GenericFacetResponse.COUNT, facetRangeCount); + rangeMap.put(GenericFacetResponse.COUNT, String.valueOf(facetRangeCount)); rangeMap.put(GenericFacetResponse.START, rangeFrom); rangeMap.put(GenericFacetResponse.END, rangeTo); rangeMap.put("bucketPosition", position);