1

私は jsf 1.1 (richfaces 3.1.6) から 2.0 (richfaces 4.3.4) に移行中です。richfaces 4.3.4 でいくつかの問題に遭遇しましたが、まったく理解できませんでした。私が抱えている問題をよりよく説明するために、次の test.xhtml を作成しました。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html 
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:t="http://myfaces.apache.org/tomahawk"
    xmlns:a4j="http://richfaces.org/a4j"
    xmlns:ui="http://java.sun.com/jsf/facelets">
    <h:head>
    <title>My Account - View Device(s)</title>
    <script type="text/javascript" src="redesign/scripts/jquery.js?v=1.7.2"></script>
    <script type="text/javascript" src="redesign/scripts/jquery.filter_input.js"></script>

    <script type="text/javascript">
        //<![CDATA[
        $(document).ready(function(){
            $('#testForm:\\numField').filter_input({regex:'[0-9]'});
        });
        //]]>

    </script>
    </h:head>

    <h:body>
        <h:form id="testForm">
            <h:outputText value="User ID: " /><h:inputText id="numField" value="#{testBean.userID}"/>
            <h:commandLink action="#{testBean.updateUserID}" value="myfaces CommandButton"/>
            <h:outputText value=" | " />
            <a4j:commandLink reRender="testForm" value="A4J Command Link" action="#{testBean.updateUserID }" /> 
        </h:form>
    </h:body>
</html>

以下は、この test.xhtml で見られる問題です。

1) 「a4j:commandLink」タグが test.xhtml ページに存在する場合、すべての jquery プラグインの読み込みに失敗しました (この場合、$("#testForm\:numField").filter_input の取得は関数エラーではありません)。この test.xhtml ページから「a4j:commandLink」タグを削除すると、すべてのプラグインが正常に動作します。

2) 「a4j:commandLink」をクリックすると、次のエラーが表示されます。同じアクションにバインドする「h:commandLink」は問題なく機能します。

助けていただければ幸いです。

4

1 に答える 1

1

<a4j:commandLink reRender="testForm" value="A4J Command Link" action="#{testBean.updateUserID }" />

reRenderrenderRichFaces 3 -> RichFaces 4に変更されました。それを変更すると、問題なく「再レンダリング」されます。

于 2013-10-23T05:54:17.187 に答える