From acac23f29a0e4846c9f18076d5901cf7a73eb0dd Mon Sep 17 00:00:00 2001 From: evasques Date: Thu, 5 Nov 2020 19:19:14 +0000 Subject: [PATCH] MNT-21967 - ClassCastException when using CMIS query with SCORE() function (#128) * Added missing validation before if columnName is the expected column before normalizing value to float, in case the column is Score --- .../alfresco/opencmis/search/CMISResultSetRow.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/repository/src/main/java/org/alfresco/opencmis/search/CMISResultSetRow.java b/repository/src/main/java/org/alfresco/opencmis/search/CMISResultSetRow.java index a833c5acfa..8f003ebb5e 100644 --- a/repository/src/main/java/org/alfresco/opencmis/search/CMISResultSetRow.java +++ b/repository/src/main/java/org/alfresco/opencmis/search/CMISResultSetRow.java @@ -177,13 +177,13 @@ public class CMISResultSetRow implements ResultSetRow context.setScore(getScore()); for (Column column : query.getColumns()) { - // When an SCORE selector is included, score must be adapted to range 0..1 due to CMIS specification - if (column.getFunction()!= null && column.getFunction().getName().equals(Score.NAME)) - { - return getNormalisedScore(); - } - else if (column.getAlias().equals(columnName)) + if (column.getAlias().equals(columnName)) { + //When an SCORE selector is included, score must be adapted to range 0..1 due to CMIS specification + if (column.getFunction()!= null && column.getFunction().getName().equals(Score.NAME)) + { + return getNormalisedScore(); + } return column.getFunction().getValue(column.getFunctionArguments(), context); } // Special case for one selector - ignore any table aliases