@@ -248,37 +248,38 @@ public void getResourceWithRegisteredMediaType() throws Exception {
248
248
ContentNegotiationManager manager = factory .getObject ();
249
249
250
250
List <Resource > paths = Collections .singletonList (new ClassPathResource ("test/" , getClass ()));
251
- this .handler = new ResourceHttpRequestHandler ();
252
- this .handler .setLocations (paths );
253
- this .handler .setContentNegotiationManager (manager );
254
- this .handler .afterPropertiesSet ();
251
+ ResourceHttpRequestHandler handler = new ResourceHttpRequestHandler ();
252
+ handler .setServletContext (new MockServletContext ());
253
+ handler .setLocations (paths );
254
+ handler .setContentNegotiationManager (manager );
255
+ handler .afterPropertiesSet ();
255
256
256
257
this .request .setAttribute (HandlerMapping .PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE , "foo.css" );
257
- this . handler .handleRequest (this .request , this .response );
258
+ handler .handleRequest (this .request , this .response );
258
259
259
260
assertEquals ("foo/bar" , this .response .getContentType ());
260
261
assertEquals ("h1 { color:red; }" , this .response .getContentAsString ());
261
262
}
262
263
263
- @ Test // SPR-13658
264
- public void getResourceWithRegisteredMediaTypeDefaultStrategy () throws Exception {
264
+ @ Test // SPR-14577
265
+ public void getMediaTypeWithFavorPathExtensionOff () throws Exception {
265
266
ContentNegotiationManagerFactoryBean factory = new ContentNegotiationManagerFactoryBean ();
266
267
factory .setFavorPathExtension (false );
267
- factory .setDefaultContentType (new MediaType ("foo" , "bar" ));
268
268
factory .afterPropertiesSet ();
269
269
ContentNegotiationManager manager = factory .getObject ();
270
270
271
271
List <Resource > paths = Collections .singletonList (new ClassPathResource ("test/" , getClass ()));
272
- this .handler = new ResourceHttpRequestHandler ();
273
- this .handler .setLocations (paths );
274
- this .handler .setContentNegotiationManager (manager );
275
- this .handler .afterPropertiesSet ();
272
+ ResourceHttpRequestHandler handler = new ResourceHttpRequestHandler ();
273
+ handler .setServletContext (new MockServletContext ());
274
+ handler .setLocations (paths );
275
+ handler .setContentNegotiationManager (manager );
276
+ handler .afterPropertiesSet ();
276
277
277
- this .request .setAttribute (HandlerMapping .PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE , "foo.css" );
278
- this .handler .handleRequest (this .request , this .response );
278
+ this .request .addHeader ("Accept" , "application/json,text/plain,*/*" );
279
+ this .request .setAttribute (HandlerMapping .PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE , "foo.html" );
280
+ handler .handleRequest (this .request , this .response );
279
281
280
- assertEquals ("foo/bar" , this .response .getContentType ());
281
- assertEquals ("h1 { color:red; }" , this .response .getContentAsString ());
282
+ assertEquals ("text/html" , this .response .getContentType ());
282
283
}
283
284
284
285
@ Test // SPR-14368
@@ -297,13 +298,13 @@ public String getVirtualServerName() {
297
298
};
298
299
299
300
List <Resource > paths = Collections .singletonList (new ClassPathResource ("test/" , getClass ()));
300
- this . handler = new ResourceHttpRequestHandler ();
301
- this . handler .setServletContext (servletContext );
302
- this . handler .setLocations (paths );
303
- this . handler .afterPropertiesSet ();
301
+ ResourceHttpRequestHandler handler = new ResourceHttpRequestHandler ();
302
+ handler .setServletContext (servletContext );
303
+ handler .setLocations (paths );
304
+ handler .afterPropertiesSet ();
304
305
305
306
this .request .setAttribute (HandlerMapping .PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE , "foo.css" );
306
- this . handler .handleRequest (this .request , this .response );
307
+ handler .handleRequest (this .request , this .response );
307
308
308
309
assertEquals ("foo/bar" , this .response .getContentType ());
309
310
assertEquals ("h1 { color:red; }" , this .response .getContentAsString ());
@@ -412,6 +413,7 @@ public void initAllowedLocationsWithExplicitConfiguration() throws Exception {
412
413
413
414
ResourceHttpRequestHandler handler = new ResourceHttpRequestHandler ();
414
415
handler .setResourceResolvers (Collections .singletonList (pathResolver ));
416
+ handler .setServletContext (new MockServletContext ());
415
417
handler .setLocations (Arrays .asList (location1 , location2 ));
416
418
handler .afterPropertiesSet ();
417
419
0 commit comments