Как использовать обработчик сервлета по умолчанию

Я хочу настроить Spring MVC для обслуживания динамических файлов, смешанных со статическими, например (URL => File ):

/iAmDynamic.html   => /WEB-INF/views/iAmDynamic.html.ftl
/iAmAlsoDynamic.js => /WEB-INF/views/iAmAlsoDynamic.js.ftl
/iAmStatiHtml      => /iAmStatic.html

DispatchServlet сопоставлен с / , включена конфигурация MVC на основе аннотаций, и у меня есть такой контроллер представления (упрощенный):

@Controller
public class ViewController
{
    @RequestMapping("*.html")
    public String handleHtml(final HttpServletRequest request)
    {
         return request.getServletPath();
    }

    @RequestMapping("*.js")
    public String handleJavaScript(final HttpServletRequest request)
    {
        return request.getServletPath();
    }
}

Конфигурация пружины выглядит вот так:

<context:component-scan base-package="myPackage" />

<mvc:default-servlet-handler />

<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
  <property name="templateLoaderPath" value="/WEB-INF/views/" />
</bean>

<bean id="viewResolver"
    class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
  <property name="cache" value="true" />
  <property name="prefix" value="" />
  <property name="suffix" value=".ftl" />
</bean>

К сожалению, это не работает. Когда этот активен, я могу получить доступ только к файлу iAmStatic.html . Когда я отключаю обработчик сервлета по умолчанию, работает только динамический материал. Но я хочу и то, и другое сразу, и это именно то, что должен делать этот обработчик сервлета по умолчанию, или нет? Где здесь ошибка?

7
задан kayahr 5 November 2011 в 20:54
поделиться