2010-10-26 1 views
2

У меня был аналогичный вопрос: Shorten path of REST service in JBoss Seam application Но не смог прокомментировать ответ капитана из-за моей первоначальной репутации. Его комментарий 19 июл в 18:10 неправильно понял ситуацию:Укоротить путь службы REST в приложении JBoss Seam все еще не так

Сердечник Faces отображается по шаблону url *.xhtml и Servlet Surfer ресурсов сопоставляется с /*. Теперь /* получает все шаблоны url, даже те из *.html, потому что он имеет больше приоритетов при сопоставлении URL-адресов.

Что я могу изменить на components.xml в коде (поведение по умолчанию): <resteasy:application resource-path-prefix="/rest"/> и web.xml в коде ниже:

<servlet-mapping> 
    <servlet-name>Seam Resource Servlet</servlet-name> 
    <url-pattern>/seam/resource/*</url-pattern> 
</servlet-mapping> 

так, что мой Resteasy ресурс может получить доступ по пути, как /rest/<resource> вместо /seam/resource/rest/<resource> без аннулирования моего *.xhtml лица сервлетов (используя его намек об изменении Шелковый ресурс сервлета url-pattern до /*)?

(Это в основном нерешенный вопрос о kongo09 более подробно).

+0

Я пробовал варианты, как: а) /отдых/* и или b) / и Но неважно ... – einsteinnjr

ответ

0

Вы ищете решение для перезаписи URL-адресов. Seam/RestEasy по-прежнему получает полный URL-адрес, но клиент получит довольно короткий URL-адрес.

Если вы используете AJP и Apache в качестве интерфейсного, вы можете пойти с стандартным mod_rewrite httpd http://httpd.apache.org/docs/2.0/misc/rewriteguide.html.

Если вы можете позволить себе JSF2, более простое решение PrettyFaces http://ocpsoft.com/prettyfaces/

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

  • Нет связанных вопросов^_^