1

JSPとRichFacesを使用します。[検索の実行]ボタンがクリックされると、検索divが非表示になり、結果divが非表示になります。

       <div id="paper">

        <f:view>
            <h:form>

                <div id="criteria">
                    <rich:panel header="Search">
                        <h:inputText value="#{Bean.name}" id="name">
                            <h:outputLabel for="name" value="Enter Name: " />
                        </h:inputText>

                        <a4j:commandButton value="Run Search" action="#{Bean.runSearch}"
                                           onclick="hideCrit({duration:0.8}); showResult({delay:1.5,duration:0.5});"
                                           reRender="searchresultstable">
                        </a4j:commandButton>
                    </rich:panel>
                </div> <!-- end criteria -->

                <rich:effect name="hideCrit" for="criteria" type="BlindUp" />
                <rich:effect name="showResult" for="results" type="BlindDown" />

                <div id="results" style="display: none;">
                    <a4j:commandButton
                        id="searchbttn" value="Back To Search"
                        onclick="hideResult({duration:0.8}); showCrit({delay:0.9,duration:0.5});"
                        reRender="searchresultstable" />

                    <rich:panel header="Results">
                        <rich:dataTable id="searchresultstable" value="#{Bean.results}" var="req"
                                        styleClass="dataTable" rowClasses="oddrow, evenrow">

                            <f:facet name="header">
                                <rich:columnGroup>
                                    <h:column>
                                        <h:outputText styleClass="headerText" value="Name" />
                                    </h:column>
                                </rich:columnGroup>
                            </f:facet>

                            <rich:columnGroup>
                                <rich:column>
                                    <h:outputText value="#{req.name}" />
                                </rich:column>
                            </rich:columnGroup>
                        </rich:dataTable>
                    </rich:panel>
                </div> <!-- end results -->

                <rich:effect name="showCrit" for="criteria" type="BlindDown" />
                <rich:effect name="hideResult" for="results" type="BlindUp" />

            </h:form>
        </f:view>

    </div> <!-- end paper -->

私はこれをTomcatWebサーバーで実行しています。

含まれているライブラリは次のとおりです。

  • JSF 1.2
  • JSTL 1.1
  • commons-beanutils-1.7.0.jar
  • commons-collections-3.2.jar
  • commons-lang-2.2.jar
  • commons-logging-1.1.1.jar
  • mysql-connector-java-3.1.1.jar
  • richfaces-api-3.3.0.GA.jar
  • richfaces-impl-3.3.0.GA.jar
  • richfaces-ui-3.3.0.GA.jar

2つのエラーが発生します。

これはロード時に:

element.dispatchEventは関数ではありません

これは、「検索の実行」ボタンがクリックされたときです。

element.makeClippingは関数ではありません

編集 など、他の豊富なコンポーネントは機能しているようですが、フェードなどの複数のコンポーネントを試しましたが、機能していないようです。

ありがとう、

4

1 に答える 1

1

問題は、context.xmlファイルのパラメーターでした。

元のファイル:

<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/project"/>

antiJARLockingパラメーターは私が認識したものではなかったので、それを削除して、すべてが正常に機能するようになりました。

新しいファイル:

<?xml version="1.0" encoding="UTF-8"?>
<Context path="/project">

みなさんのご意見ありがとうございます。

于 2009-04-29T19:15:12.223 に答える