/** * Enable forwarding to the "default" Servlet identified by the given name. * <p>This is useful when the default Servlet cannot be autodetected, * for example when it has been manually configured. * @see DefaultServletHttpRequestHandler */ public void enable(@Nullable String defaultServletName) { this.handler = new DefaultServletHttpRequestHandler(); if (defaultServletName != null) { this.handler.setDefaultServletName(defaultServletName); } this.handler.setServletContext(this.servletContext); }
@Bean public DefaultServletHttpRequestHandler defaultServletHttpRequestHandler() { return new DefaultServletHttpRequestHandler(); }
@Test public void enable() throws Exception { configurer.enable(); SimpleUrlHandlerMapping handlerMapping = configurer.buildHandlerMapping(); DefaultServletHttpRequestHandler handler = (DefaultServletHttpRequestHandler) handlerMapping.getUrlMap().get("/**"); assertNotNull(handler); assertEquals(Integer.MAX_VALUE, handlerMapping.getOrder()); handler.handleRequest(new MockHttpServletRequest(), response); String expected = "default"; assertEquals("The ServletContext was not called with the default servlet name", expected, servletContext.url); assertEquals("The request was not forwarded", expected, response.getForwardedUrl()); }
@Bean public DefaultServletHttpRequestHandler defaultServletHttpRequestHandler() { return new DefaultServletHttpRequestHandler(); } @Bean public SimpleUrlHandlerMapping simpleUrlHandlerMapping() { Map<String, String> urlMap = new ManagedMap<String, String>(); urlMap.put("/**", defaultServletHandlerName); SimpleUrlHandlerMapping hm = new SimpleUrlHandlerMapping(); hm.setUrlMap(urlMap); return hm; }
@Test public void enableWithServletName() throws Exception { configurer.enable("defaultServlet"); SimpleUrlHandlerMapping handlerMapping = configurer.buildHandlerMapping(); DefaultServletHttpRequestHandler handler = (DefaultServletHttpRequestHandler) handlerMapping.getUrlMap().get("/**"); assertNotNull(handler); assertEquals(Integer.MAX_VALUE, handlerMapping.getOrder()); handler.handleRequest(new MockHttpServletRequest(), response); String expected = "defaultServlet"; assertEquals("The ServletContext was not called with the default servlet name", expected, servletContext.url); assertEquals("The request was not forwarded", expected, response.getForwardedUrl()); }
/** * Enable forwarding to the "default" Servlet identified by the given name. * <p>This is useful when the default Servlet cannot be autodetected, * for example when it has been manually configured. * @see DefaultServletHttpRequestHandler */ public void enable(@Nullable String defaultServletName) { this.handler = new DefaultServletHttpRequestHandler(); if (defaultServletName != null) { this.handler.setDefaultServletName(defaultServletName); } this.handler.setServletContext(this.servletContext); }
/** * Enable forwarding to the "default" Servlet identified by the given name. * <p>This is useful when the default Servlet cannot be autodetected, * for example when it has been manually configured. * @see DefaultServletHttpRequestHandler */ public void enable(String defaultServletName) { this.handler = new DefaultServletHttpRequestHandler(); this.handler.setDefaultServletName(defaultServletName); this.handler.setServletContext(this.servletContext); }