0

OK、この問題に関するすべての投稿を読みましたが、見つかりません。私の状況は非常に簡単です。私がやっているのは、Primefaces 3.3.1 と JSF 2.1 を使用してログイン ページをレンダリングすることだけです。コードは次のとおりです。

<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:p="http://primefaces.org/ui"
    xmlns:pe="http://primefaces.org/ui/extensions"
    xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
    <title>ACME Systems - Home Page</title>
    <style>
    .noBorders tr, .noBorders td {
    background: none !important;
    border: none !important;
}

    </style>
</h:head>
<h:body>
    <p:panel id="mainPanel"
        style="height: 106px; height: auto !important; margin: 0 auto; min-height: 106px; position: relative; width: 960px; z-index: 100;">
        <h:form id="loginForm">
            <p:panel header="Secure Login"
                style="padding-bottom: 40px; width: 380px;">
                <p:panelGrid columns="2" styleClass="noBorders">
                    <h:outputText value="Username:" />
                    <p:inputText id="username" required="true"
                        requiredMessage="Username is required." title="Username"
                        value="#{LoginBean.username}" />

                    <h:outputText value="Password:" />
                    <p:password id="password" required="true"
                        requiredMessage="Password is required"
                        value="#{LoginBean.password}" />
                </p:panelGrid>
                <p:commandButton id="loginButton" value="Login"
                    actionListener="#{LoginBean.login}"
                    style="margin-top: 5px; float: right;" />
            </p:panel>
        </h:form>
    </p:panel>
</h:body>
</html>

コマンド ボタンのアクション リスナーが起動していません。ah:commandbutton に変更すると、すべて問題ありません。テーマを使用するという理由だけで、primefaces タグを使用することをお勧めします。h: を使用する場合は、css を取得する必要があります。何か案は?もう 1 つ、primefaces ボタンの直前に ah:commandbutton をドロップし、それを使用して最初のトリガーを実行すると、primefaces ボタンはそれ以降に機能します。

4

1 に答える 1

0

修正したので、これを閉じます。将来、誰かがこの情報を使用する可能性があります。Primefaces (または任意のフレームワーク) のコード サンプルを読んで、理解できるまで正確なコードを使用するようにしてください。JSF を 6 年間使用した後も、BalusC のようにすべてを理解できていません:-)

于 2012-08-06T14:18:52.550 に答える