| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > Spring MVC. Friendly url. |
| Автор: garbuz 5.6.2009, 13:40 |
| Добрый день. Создаю новую тему Хочу спросить об опыте создания и использования спринговых веб приложений с использованием чпу. Например есть у меня список категорий, хочу иметь урл вида myhost.com/blog/category/java для категории "java", урл для создания категории типа myhost.com/blog/category/create, для редактирования myhost.com/blog/category/edit/java Ну вот как-то так. Что для этого нужно? Просто грамотный URL-mapping? Или еще что-то требуется. Каким про этом дожен быть контроллер? Как должен обрабатывать урлы и действовать в дальнейшем? Добавлено через 1 минуту и 36 секунд Перенесите пожалуйста в java EE. |
| Автор: AntonSaburov 5.6.2009, 14:50 |
| В твоем варианте - да, нужен нормальный url-mapping. Есть еще вариант разбираться в контроллере по какому-нибудь параметру и вызывать что-то соотвествующее. |
| Автор: garbuz 15.6.2009, 22:35 | ||||||||||
| Появилось немного свободного времени. Едем дальше С красивыми урлами вот что вышло. (точнее пока ничего не вышло) Маппинг переписал, вот что есть
Но что-то даже главная страница не грузится. В web.xml
Сам index.jsp
Вот что пишет спринг
Если руками в строку браузера дописать home или же запустить сразу с /home, то контроллер отрабатывает, выбирает данные, это видно по консоли, но
|
| Автор: NeoNYura 15.6.2009, 23:04 | ||||||
могу ошибаться, со спрингом мало работал но.
У тебя нету маппинга, по урлу которому ты обращаешься у тебя ****-servlet.xml должна быть разводка на контроллеры springa, например:
Ой не заметил SimpleUrlHandlerMapping Но в мапе у тебя только
а обращаешься по урлу ты к /blog/ |
| Автор: garbuz 15.6.2009, 23:28 |
| NeoNYura, это потому, что тут не срабатывает редирект Если руками дописать /home или же сразу запуститься с /home, то... выше написано что происходит |
| Автор: Старовъръ 16.6.2009, 00:05 | ||
Попробуй
|
| Автор: garbuz 16.6.2009, 00:40 | ||
Пробовал уже
|
| Автор: Kangaroo 16.6.2009, 01:34 |
| garbuz, ну так ты Спрингу сказал все урлы через диспатчер пропускать (даже джсп страницы). Он в шоке. На сколько я знаю в Спринг МВС нет поддержки ЧПУ. Попробуй сделать с http://tuckey.org/urlrewrite/, небольшой пример - http://sziebert.net/posts/restful-urls-with-spring-mvc-and-urlrewritefilter/ |
| Автор: MisterCleric 16.6.2009, 09:27 | ||
стоп. А почему действительно не сделать такой мепинг?
|
| Автор: garbuz 16.6.2009, 13:43 | ||
Господа, а если попробовать использовать аннотации? Типа
Сейчас сам попробывать не могу, нету проекта по рукой. Если мы в web.xml укажем диспетчеру обрабатывать все урлы с .htm, а у контроллера явно укажем /home, то диспетчер схавает его? |
| Автор: Asal 23.6.2009, 17:41 | ||
насколько я помню - нет пользуйте UrlRewrite - прост и удобен |
| Автор: garbuz 23.6.2009, 17:58 |
Спасибо, уже использую UrlRewrite. В третьем спринге будет следующее http://blog.springsource.com/2009/03/08/rest-in-spring-3-mvc/ |