4

My Spring Dispatcher сервлет url-pattern is/* (как показывает Spring MVC REST) ​​
Теперь все запросы разрешены этим сервлетом. даже CSS/JS/Изображения также разрешаются и обрабатываются сервлета ..Spring MVC REST: статические файлы недоступны из-за url-шаблона

Итак, Spring MVC пытается найти контроллер .. :(

Как обойти это? Есть ли стандартный выход из этой проблемы? ?

& не хотите изменить URL-шаблон для/отдых/* (так, другие статические ресурсы получить доступ к/CSS/или/JS и т.д.)

ответ

5

Вы можете отобразить контроллеры меньше набор URLS (т.е./app/*), а затем переписать URL-адреса, которые ваши пользователи действительно видят, чтобы они даже не знали. Посмотрите на the mvc-basic webapp sample, особенно web.xml и urlrewrite.xml, чтобы посмотреть, как это делается.

+0

спасибо, хм .. Я был очень близок, чтобы найти это решение в сгенерированном коде ROO ..;) – Nachiket

+0

Немного не по теме, но Roo стоит посмотреть на создание веб-приложений. Определенно один, чтобы следить. – GaryF

+0

Я уже начал демонстрационный проект .. :) Мне это нравится .. потому что .. он делает то, что я делаю вручную .. – Nachiket

2

Переместите диспетчер весны в какой-либо подраздел URL-адреса и используйте Tuckey для переписывания URL-адресов, с которыми имеет пользователь.

http://www.example.org/app/controller/action ->http://www.example.org/controller/action

+0

спасибо за решение ... Spring ROO дает Tuckey в качестве перезаписи URL по умолчанию .. – Nachiket

0

Просто хедз-ап обновление на этом: конфигурация переписывают по умолчанию, как это определено в образце Spring не работает из коробки для меня. Правила перезаписи таблиц стилей, скриптов и т. Д. Все еще обрабатывались в правило/app/*, а затем обрабатывались DispatchServlet, что нежелательно.

Мне пришлось добавить атрибут last="true" в правила стилей/скриптов/изображений, чтобы указать, что другие правила не должны применяться, и мне пришлось использовать макрос Spring Spring FreeMarker в любых путях добавления CSS/JS.

На всякий случай кто-то сталкивается с той же проблемой.

Смежные вопросы