Я хочу настроить 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
. Когда я отключаю обработчик сервлета по умолчанию, работает только динамический материал. Но я хочу и то, и другое сразу, и это именно то, что должен делать этот обработчик сервлета по умолчанию, или нет? Где здесь ошибка?