@@ -63,9 +63,9 @@ public void init() throws ServletException {
63
63
log (classifier );
64
64
}
65
65
66
- ners = Generics . newHashMap ();
66
+ ners = new HashMap <> ();
67
67
for (String classifier : classifiers ) {
68
- CRFClassifier model = null ;
68
+ CRFClassifier < CoreMap > model = null ;
69
69
String filename = "/WEB-INF/data/models/" + classifier ;
70
70
InputStream is = getServletConfig ().getServletContext ().getResourceAsStream (filename );
71
71
@@ -154,15 +154,23 @@ private void addResults(HttpServletRequest request,
154
154
classifier = this .defaultClassifier ;
155
155
}
156
156
157
- response .addHeader ("classifier" , classifier );
158
- response .addHeader ("outputFormat" , outputFormat );
159
- response .addHeader ("preserveSpacing" , String .valueOf (preserveSpacing ));
157
+ CRFClassifier <CoreMap > nerModel = ners .get (classifier );
158
+ // check that we weren't asked for a classifier that doesn't exist
159
+ if (nerModel == null ) {
160
+ out .print (StringEscapeUtils .escapeHtml4 ("Unknown model " + classifier ));
161
+ return ;
162
+ }
160
163
161
164
if (outputFormat .equals ("highlighted" )) {
162
- outputHighlighting (out , ners . get ( classifier ) , input );
165
+ outputHighlighting (out , nerModel , input );
163
166
} else {
164
- out .print (StringEscapeUtils .escapeHtml4 (ners . get ( classifier ) .classifyToString (input , outputFormat , preserveSpacing )));
167
+ out .print (StringEscapeUtils .escapeHtml4 (nerModel .classifyToString (input , outputFormat , preserveSpacing )));
165
168
}
169
+
170
+ response .addHeader ("classifier" , classifier );
171
+ // a non-existent outputFormat would have just thrown an exception
172
+ response .addHeader ("outputFormat" , outputFormat );
173
+ response .addHeader ("preserveSpacing" , String .valueOf (preserveSpacing ));
166
174
}
167
175
168
176
private static void outputHighlighting (PrintWriter out ,
0 commit comments