diff --git a/solr/core/src/java/org/apache/solr/handler/AnalyzeEvaluator.java b/solr/core/src/java/org/apache/solr/handler/AnalyzeEvaluator.java index 207f4046590..485f9c39906 100644 --- a/solr/core/src/java/org/apache/solr/handler/AnalyzeEvaluator.java +++ b/solr/core/src/java/org/apache/solr/handler/AnalyzeEvaluator.java @@ -81,17 +81,16 @@ public class AnalyzeEvaluator extends SimpleEvaluator { return null; } - TokenStream tokenStream = analyzer.tokenStream(analyzerField, value); - CharTermAttribute termAtt = tokenStream.getAttribute(CharTermAttribute.class); - tokenStream.reset(); List tokens = new ArrayList(); - while (tokenStream.incrementToken()) { - tokens.add(termAtt.toString()); + + try(TokenStream tokenStream = analyzer.tokenStream(analyzerField, value)) { + CharTermAttribute termAtt = tokenStream.getAttribute(CharTermAttribute.class); + tokenStream.reset(); + while (tokenStream.incrementToken()) { + tokens.add(termAtt.toString()); + } + tokenStream.end(); } - - tokenStream.end(); - tokenStream.close(); - return tokens; }