#java #apache #wicket
#java #apache #wicket
Вопрос:
Я пытаюсь интегрировать Wicket (1.5.16) с «Единым входом». В этом процессе IdP отправляет множество атрибутов обратно в приложение Wicket, используя HTTP POST.
Если я использую, он ищет жизненный цикл, а также добавляет некоторые числа в форму и т.д. Я ищу следующее решение: 1) Создайте сервлет / некоторый класс Wicket, который может получать запросы POST. 2) Если аутентификация SAML прошла успешно, перенаправьте на частный внутренний .
Пожалуйста, дайте мне знать, если у вас есть какие-либо материалы.
Комментарии:
1. По крайней мере, в более новых версиях wicket (> 6) любая страница Wicket может получать запросы Post и реагировать на них. Вам просто нужен конструктор
public MyWicketPage(PageParameters pageParameters)
, а затем вы можете использовать этот объект PageParameters для получения параметров Post, отправляемых на страницу, и реагирования на них.2. Большое спасибо за ответ. Вышеупомянутый конструктор также доступен в версии 1.56. Я использовал его, но все еще вижу номер в URL. localhost:8080/mylogin? 4-1. IFormSubmitListener-ssoResponseform
Ответ №1:
Вы можете обернуть Wicket в другой фильтр сервлета. Таким образом, ваш фильтр получит запрос первым и сможет решить, обрабатывать его или передавать в Wicket.
Для достижения этого вам просто нужно определить свой <filter>
фильтр / сервлет Wicket выше / перед ним в web.xml .