как перенаправить в j_security_check в управляемом бине? - PullRequest
0 голосов
/ 26 мая 2011

Я успешно запустил проект аутентификации на основе FORM и пытаюсь сделать то же самое с проектом icefaces.Другими словами, я хочу использовать ice: форму вместо формы, поэтому мне было интересно, могу ли я перенаправить запрос на вход в систему j_security_check в управляемом компоненте:

public void myMethod(ActionEvent e){
  //some code that redirects to j_security_check
}

и на моей странице входа в систему:

<ice:commandButton value="login" ActionListener="#{myBean.myMethod}"/>

Но я действительно не знаю, как это сделать, и я не могу найти документацию о j_security_check и о том, как это действительно работает.

1 Ответ

0 голосов
/ 27 мая 2011

Вы можете иметь форму с action="j_security_check", с текстовыми полями или скрытыми полями, содержащими имя пользователя и пароль. Вы можете связать эти поля с переменными в вашем управляемом компоненте. Вы можете использовать кнопку отправки в форме вместо <ice:commandButton>.

Если вам нужно использовать <ice:commandButton>, вы можете использовать Javascript для отправки сценария "myform.submit ()":

public void myMethod(ActionEvent e)
{
      //Some other code...

      JavascriptContext.addJavascriptCall(
            FacesContext.getCurrentInstance(), "document,forms.myForm.submit()");    
}

Вы также можете динамически создавать элемент формы в Javascript, назначать значения имени пользователя / пароля и отправлять его, используя метод JavascriptContext.addJavascriptCall()

.
...