У меня есть страница входа в систему и панель инструментов.Проблема с переадресацией JSF2
После того, как будет выведена страница входа в систему на панели управления (с использованием правила навигации).
<navigation-rule>
<from-view-id>/login.xhtml</from-view-id>
<navigation-case>
<from-outcome>dashboard</from-outcome>
<to-view-id>/viewp/dashboard.xhtml</to-view-id>
</navigation-case>
</navigation-rule>
У меня есть фильтрация карт для всех запросов.
Вот мой сценарий. На моей странице панели мониторинга есть клиентский опросчик. Когда сервер перезагружается, poller отправляет запрос, который будет интерпретироваться фильтром.
Внутри фильтра у меня есть логика, как
If(url.contains("login.xhtml))
{
//dofilter
}else
{
// redirect to login.
}
но почему-то это не перенаправляет.
Одно наблюдение у меня есть, после входа в систему, хотя я на странице панели инструментов, мой URL-адрес по-прежнему похож на mydomain/login.xhtml
. Я думаю, потому что URL-адрес в браузере mydomain/login.xhtml
, response.redirect("mydomain/login.xhtml")
не работает. Какие-либо предложения?
Спасибо,
Вместо ответа сервера, что я пытаюсь сделать это, когда сервер и голосующий отправляет запрос, он будет проходить через фильтр, внутри фильтра я могу Findout, что это первый запрос, таким образом отправить .redirect(). Но проблема в том, что URL, который я передаю здесь, точно такой же, как и у меня в браузере, я думаю, именно поэтому браузер ничего не делает. – kosa
Вы сейчас говорите, что вы синхронно опросили? Ваш вопрос/проблема имеет смысл, если вы делаете это асинхронно (т. Е. JavaScript/Ajax). – BalusC
Есть ли в любом случае, когда мы переходим из login.xhtml в dashboard.xhtml, мы можем изменить URL-адрес браузера на основе правила навигации, как в моем вопросе? Я также попробовал /viewp/dashboard.xhtml?faces-redirect=true. – kosa