powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Маппинг сервлетов
12 сообщений из 12, страница 1 из 1
Маппинг сервлетов
    #38989911
G.Collector
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть вот такой сервлет:

Код: java
1.
2.
3.
@WebServlet(asyncSupported = false, name = "PageRendererServlet", urlPatterns = {"/page/*"} )
@Controller
public class PageRendererServlet extends HttpServlet {



Есть JSF'ный сервлет, который маппится на /pages/*

Возможно ли как-то задать такую маску для обоих сервлетов, чтобы все, что не имеет расширения .xhtml шло через него, а то что имеет - через JSF?

Точка входа у обоих должна быть одинаковой в этом случае - /page/
...
Рейтинг: 0 / 0
Маппинг сервлетов
    #38989967
yelena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А будет приложение нормально работать, если два разных сервлета замаплены на один и тот же urlPattern?
Может, JSF'ный сервлет все-таки замапить на *.xhtml ? А в PageRendererServlet сделать проверку на расширение имени и делать forward:

Код: java
1.
2.
RequestDispatcher rd = request.getRequestDispatcher("*.xhtml");  
rd.forward(request, response);
...
Рейтинг: 0 / 0
Маппинг сервлетов
    #38989990
yelena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сорри, видимо, плохо у меня со зрением. Вижу urlPatterns = {"/page/*"} и /pages/*.
Как там на самом деле, автору виднее.
...
Рейтинг: 0 / 0
Маппинг сервлетов
    #38989991
yelena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Но все равно автор хочет, чтобы точка входа была одинаковой, это странно.
...
Рейтинг: 0 / 0
Маппинг сервлетов
    #38989999
yelena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может, виды pages поделить на /pages/вид1 и /pages/вид2, чтобы не валялись они в одной куче.
Тогда 2 паттерна имеются и проблем нет.
...
Рейтинг: 0 / 0
Маппинг сервлетов
    #38990011
G.Collector
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yelenaНо все равно автор хочет, чтобы точка входа была одинаковой, это странно.Досталась такая архитектура

Сделал очень топорно и просто. В сервлете для /page:

Код: java
1.
2.
3.
4.
if (map.get("content").toString().contains("xhtml"))
    resp.sendRedirect(map.get("content").toString());
else
    template.process(map, out);
...
Рейтинг: 0 / 0
Маппинг сервлетов
    #38990013
yelena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это чтобы клиент получил ответ с редиректом и опять отправил запрос... А зачем его так напрягать?
...
Рейтинг: 0 / 0
Маппинг сервлетов
    #38990035
G.Collector
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yelenaЭто чтобы клиент получил ответ с редиректом и опять отправил запрос... А зачем его так напрягать?А как еще? По умолчанию отрабатывает генератор статичных html-страниц (с использованием freemarker), старый функционал в системе реализован на нечеловеческих JSF'ках. Если клиент переходит на старые JSF'ные страницы, то редиректим, их подхватывает faces-сервлет и парсит.
...
Рейтинг: 0 / 0
Маппинг сервлетов
    #38990041
yelena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Куда редиректите? По тому же адресу?
Ну, главное, чтобы у вас все работало.
forward позволил бы обойтись без лишнего запроса.
...
Рейтинг: 0 / 0
Маппинг сервлетов
    #38990472
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Маппинг сервлетов
    #38990477
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а для спринга

можно и так делать : явно указав prefix и suffix

http://forum.spring.io/forum/spring-projects/web/18234-how-to-configure-spring-mvc-view-resolver-for-facelets
...
Рейтинг: 0 / 0
Маппинг сервлетов
    #38990487
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">

	<context:component-scan base-package="com.javacodegeeks.snippets.enterprise" />
	 
   <bean class="com.javacodegeeks.snippets.enterprise.HelloWorldController" />
   
 <bean 
   class="org.springframework.web.servlet.mvc.support.ControllerClassNameHandlerMapping" />
   
	<bean
		class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="prefix">
			<value>/WEB-INF/</value>
		</property>
		<property name="suffix">
			<value>.jsp</value>
		</property>
		<property name="order" value="2" />
	</bean>

	<bean class="org.springframework.web.servlet.view.XmlViewResolver">
		<property name="location">
			<value>/WEB-INF/views.xml</value>
		</property>
		<property name="order" value="1" />
	</bean>

	<bean class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
		<property name="basename" value="views" />
		<property name="order" value="0" />
	</bean>

</beans>
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Маппинг сервлетов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]