jsf 2.0 одно веб-приложение с несколькими доменами - PullRequest
2 голосов
/ 14 сентября 2011

У меня есть веб-приложение jsf 2.0 (с ejb), которое будет обслуживать несколько доменов. Мне нужно загрузить данные в соответствии с доменным именем, с которого пришел пользователь. Поэтому я должен получить домен, вызвать службу ejb и сохранить данные в сеансе пользователя. Кроме того, когда пользователь заходит на domainA.com, а затем переходит на domainB.com, я должен создать новую сессию.

Как это можно сделать? Сервлет, фильтр, фазовый слушатель, постструктура в управляемом бине? Или, может быть, создать несколько веб-приложений, по одному для каждого домена?

1 Ответ

0 голосов
/ 14 сентября 2011

Если вы собираетесь использовать полностью определенные домены, а не субдомены, я бы порекомендовал использовать отдельные развертывания для каждого домена, это решит вашу проблему с созданием сеанса и не должно быть трудным.Вы можете получить доменное имя внутри ваших сервлетов или других компонентов, имеющих доступ к объекту запроса, из информации, связанной с самим запросом:

        // Get client's hostname
        String hostname = req.getRemoteHost(); // hostname

Этот метод

возвращает хостимя клиента, отправляющего запрос.Если имя неизвестно, возвращает пустую строку.Полное доменное имя (например, «xyzws.com») клиента, сделавшего запрос.IP-адрес возвращается, если это невозможно определить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...