2013-06-17 4 views
0

Я разрабатываю приложение J2EE с использованием Spring (mvc, security и т. Д.), И у меня проблема с сопоставлениями. Я хотел бы, чтобы перенаправлять людей, которые типа «..../MyApp» в приветственном JSP, в частности, к „/myapp/welcome.html“Проблема с отображением сервлета с SpringMVC

Раньше мой сервлет-отображение имел этот конфиг:

<servlet-mapping> 
    <servlet-name>MyApp</servlet-name> 
    <url-pattern>*.html</url-pattern> 
</servlet-mapping> 

Но я изменил его, чтобы уловить запрос «/ myapp». NewOne, что я написал следующий:

<servlet-mapping> 
    <servlet-name>ThreddsAdminPanel</servlet-name> 
    <url-pattern>/*</url-pattern> 
</servlet-mapping> 

Это работает, как ожидалось, но когда я пытаюсь получить доступ к странице, которая нуждается в CSS, появляется эта ошибка: «отображение не найдено для запроса HTTP с URI»

Я думаю, что если My url-pattern является/*, сервлет ловит что-то, что ему не принадлежит, хотя я не знаю, как это сделать. Кто-нибудь знает хороший способ сделать это?

Спасибо

ответ

1

Смотреть это: Pretty URL Mapping with Spring 3.0

В принципе, изменить сервлет-отображение из /* в /, а затем вы можете не беспокоиться о выполнении редиректа.

Для редиректа, вы должны быть в состоянии сделать что-то вроде этого (при условии использования MVC пространства имен в XML-конфигурации):

<mvc:view-controller path="/myapp" view-name="redirect:/myapp/welcome.html"/> 
+0

FYI, если вы уже не имеете его, добавьте в ваш XML для использования пространства имен mvc: 'xmlns: mvc =" http://www.springframework.org/schema/mvc "и' xsi: schemaLocation = "http://www.springframework.org/schema/mvc http: //www.springframework.org/schema/mvc/spring-mvc.xsd "' – superEb

+0

Благодарим вас за ответ @superEb, но моя проблема сохраняется ... Я заменил/* на /, но файлы css и js не нагрузки. Например, «Нет сопоставления, найденного для HTTP-запроса с URI [/myapp/js/usersTable.js]», и в развернутую папку я могу увидеть папку js в корне, как и ожидалось. – mannuk

+0

Если ваши статические ресурсы развернуты в вашем веб-приложении (например, WAR), вам также понадобится сопоставить эти ресурсы в конфигурации Spring, например '' – superEb