1

次のような状況があります。

<h:form>
<h:panelGrid columns="2" cellpadding="5">
    <p:commandButton id="loginButton" value="Login" ajax="false"
                        action="#{login.loginAction}" />
</h:panelGrid>
</h:form>

ボタンをクリックすると、Bean のメソッド loginAction() が実行されます。

私が持っている場合:

<h:form>

    <h:panelGrid columns="2" cellpadding="5">

        <h:outputLabel for="username" value="#{labels.UserName}" />
        <p:inputText value="#{login.username}" id="username"
                                required="true" />

        <p:commandButton id="loginButton" value="Login" ajax="false"
                        action="#{login.loginAction}" />
    </h:panelGrid>
</h:form>

この状況では、ログイン ボタンを押しても loginAction() メソッドが呼び出されず、その理由がわかりません。ユーザー名のセッターが呼び出されますが、loginAction no.

JSF 2.0、Primefaces 3.3 を使用しています。

どうもありがとうございました。

4

2 に答える 2

3

私はあなたがあなたのコンソールでもエラーを起こさないと思いますか?その場合は<p:messages autoUpdate="true" />、フォームのすぐ内側に追加して、検証エラーなどがあるかどうかを確認することをお勧めします。

于 2012-07-26T20:35:12.407 に答える
0

私が使用する場合

<h:commandButton id="loginButton" value="Login" ajax="false"
                        action="#{login.loginAction}" />

メソッド loginAction が呼び出されます。

p:commandButton の代わりに h:commandButton を使用します。

于 2012-07-27T07:37:25.813 に答える