3

私はlogin.jspページを持っています:

<form method="post" action="url:8081/login.xhtml">
    Username : <input type="text" name="txtUsername"/>
    Password : <input type="text" name="txtPassword"/>
    <input type="submit" value="submit"/>
</form>

txtUsername送信するときに、とtxtPasswordパラメータを取得するにはどうすればよいlogin.xhtmlですか?

4

1 に答える 1

5

すべてのリクエストパラメータは、#{param}マップで利用可能なELにあります。したがって、これは次のことを行う必要があります。

<p>Username: #{param.txtUsername}</p>
<p>Password: #{param.txtPassword}</p>

Javaコードで前処理する必要がある場合は、管理プロパティとして配置するか、に関連付けられたバッキングBeanクラスのパラメーターを表示することをお勧めしますlogin.xhtml

管理プロパティの例:

@ManagedBean
@RequestScoped
public class Login {

    @ManagedProperty("#{param.txtUsername}")
    private String username;

    @ManagedProperty("#{param.txtPassword}")
    private String password;

    @PostConstruct
    public void init() {
        // Do here your thing with those parameters.
        System.out.println(username + ", " + password);
    }

    // ...
}

パラメータの例を表示します。

<f:metadata>
    <f:viewParam name="txtUsername" value="#{login.username}" required="true" />
    <f:viewParam name="txtPassword" value="#{login.password}" required="true" />
    <f:event type="preRenderView" listener="#{login.init}" />
</f:metadata>

@ManagedBean
@RequestScoped
public class Login {

    private String username;
    private String password;

    public void init() {
        // Do here your thing with those parameters.
        System.out.println(username + ", " + password);
    }

    // ...
}

参照:

于 2012-06-04T13:54:42.887 に答える