diff --git a/pom.xml b/pom.xml
index ced57a14f..0585c46e6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -24,7 +24,7 @@
3.2.1
2.6
- 0.90.11
+ 1.0.0
1.7.0.RC1
diff --git a/src/main/java/org/springframework/data/elasticsearch/core/CriteriaQueryProcessor.java b/src/main/java/org/springframework/data/elasticsearch/core/CriteriaQueryProcessor.java
index ba61a8316..8c4fc11ca 100644
--- a/src/main/java/org/springframework/data/elasticsearch/core/CriteriaQueryProcessor.java
+++ b/src/main/java/org/springframework/data/elasticsearch/core/CriteriaQueryProcessor.java
@@ -23,6 +23,7 @@ import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;
+import org.apache.lucene.queryparser.flexible.core.util.StringUtils;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.BoostableQueryBuilder;
import org.elasticsearch.index.query.QueryBuilder;
@@ -117,18 +118,20 @@ class CriteriaQueryProcessor {
}
QueryBuilder query = null;
+ String searchText = StringUtils.toString(value);
+
switch (key) {
case EQUALS:
- query = fieldQuery(fieldName, value);
+ query = queryString(searchText).field(fieldName);
break;
case CONTAINS:
- query = fieldQuery(fieldName, "*" + value + "*").analyzeWildcard(true);
+ query = queryString("*" + searchText + "*").field(fieldName).analyzeWildcard(true);
break;
case STARTS_WITH:
- query = fieldQuery(fieldName, value + "*").analyzeWildcard(true);
+ query = queryString(searchText + "*").field(fieldName).analyzeWildcard(true);
break;
case ENDS_WITH:
- query = fieldQuery(fieldName, "*" + value).analyzeWildcard(true);
+ query = queryString("*" + searchText).field(fieldName).analyzeWildcard(true);
break;
case EXPRESSION:
query = queryString((String) value).field(fieldName);
@@ -144,7 +147,7 @@ class CriteriaQueryProcessor {
query = boolQuery();
Iterable