Дружественные URL с Tomcat - PullRequest
       34

Дружественные URL с Tomcat

0 голосов
/ 07 декабря 2011

Я хочу, чтобы URL-адреса отправлялись на сервлеты, например http://host/Servlet/1 вместо http://host/Servlet?ID=1

Любые предложения о том, как это можно сделать? Желательно также с несколькими уровнями, чтобы я мог сделать что-то вроде http://host/Servlet/1/Files

Спасибо

Ответы [ 4 ]

3 голосов
/ 07 декабря 2011

HttpServletRequest предоставляет метод getPathInfo () , который предоставляет вам информацию об URL-адресе запроса после самого пути сервлета.Вы можете сопоставить свой сервлет с / Servlet / *, а затем получить идентификатор с помощью getPathInfo ().

0 голосов
/ 07 декабря 2011

Один из способов решения этой проблемы может состоять в том, чтобы ваш контроллер-сервлет находился спереди для отправки, чтобы исправить сервлет сзади, в зависимости от URI запроса от getRequestURI в HttpServletRequest.

0 голосов
/ 07 декабря 2011

Вы можете сделать это с помощью фильтра.Отправьте входящий URL по некоторым правилам и перенаправьте на отправленный URL.

0 голосов
/ 07 декабря 2011

Если у вас нет требования «должен использовать только Tomcat», я предлагаю вам настроить слой Apache перед Tomcat, где вы можете настроить такие и другие сложные перезаписи URL.

...