diff --git a/server-application-server/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/HibernateSearchDAOV3Adaptor.java b/server-application-server/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/HibernateSearchDAOV3Adaptor.java index 770cad211f90c45fdb392cd73735e995febe3029..ee950a9ec56f25a418d30def762506014ceffa79 100644 --- a/server-application-server/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/HibernateSearchDAOV3Adaptor.java +++ b/server-application-server/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/db/HibernateSearchDAOV3Adaptor.java @@ -113,10 +113,11 @@ public class HibernateSearchDAOV3Adaptor implements IHibernateSearchDAO { // Obtain global criteria GlobalSearchCriteria globalSearchCriteria = getCriteria(searchableEntity); + if (searchTerm.startsWith("\"") && searchTerm.endsWith("\"")) { - globalSearchCriteria.withText().thatContainsExactly(searchTerm.substring(1, searchTerm.length() - 1)); + globalSearchCriteria.withText().thatMatches(searchTerm.substring(1, searchTerm.length() - 1)); } else { - globalSearchCriteria.withText().thatContains(searchTerm); + globalSearchCriteria.withText().thatMatches(searchTerm); } operationLog.info("ADAPTED [FULL TEXT SEARCH] : " + searchableEntity + " [" + searchTerm + "] " + useWildcardSearchMode);