Spring3 - WebFlow - JSF - Невозможно получить отображение '/' для правильной работы - PullRequest
0 голосов
/ 25 февраля 2011

Извините, если это вопрос новичка, но я пытаюсь научить себя Spring MVC / WebFlow с помощью JSF / Primefaces, и я столкнулся с проблемой при настройке ...

Если в сети.xml, я установил диспетчер MVC для перехвата всех '/', затем зарегистрировал @RequestMapping(value = "/{catchall}", method = RequestMethod.GET) в моем контроллере.Страница обслуживается, но все файлы ресурсов имеют имя {catchall}, предшествующее началу имени, например

Если я использую //127.0.0.1:8080/testpage

<link type="text/css" rel="stylesheet" href="/testpage/javax.faces.resource/jquery/ui/jquery-ui.css?ln=primefaces&amp;v=2.2" />

Это приводит к тому, что каждый ресурс НЕ НАЙДЕН и возвращает ошибку 404?

Если вместо «всеохватывающего» я ​​устанавливаю диспетчер MVC на «/ a / *», выполнить тот же тестНапример,

// 127.0.0.1:8080/a/testpage, он отлично работает с ресурсами, отображаемыми как:

<link type="text/css" rel="stylesheet" href="/a/javax.faces.resource/jquery/ui/jquery-ui.css?ln=primefaces&amp;v=2.2" /> 

Я пытаюсь настроить систему, в которой страница находитсяобслуживается динамически из хранилища данных и требует, чтобы страница - www.whwhat.com/ enjpagename} - без какой-либо префиксной структуры или постфиксного идентификатора (например, .jsp, .jsf, .xhtml и т. д.)

Я могу при необходимости опубликовать конфиги, но я уверен, что мне просто не хватает чего-то глупого !!!!

Пожалуйста, помогите.

1 Ответ

0 голосов
/ 28 февраля 2011

В прошлый раз, когда я пытался, я обнаружил, что библиотека Sun Mojarra предполагает, что ваше отображение сервлета является либо отображением префикса, либо отображением сервлета по расширению (но не отображением сервлета по умолчанию "/").Лучшим вариантом для использования URL-адресов без префикса сервлета может быть использование методов перезаписи URL-адресов, таких как Tuckey UrlRewriteFilter или в JSF PrettyFaces, довольно популярен.

...