0

説明:

バッキング Bean にメンバーを設定する JSF コマンド リンクがありますが、setPropertyActionListener を使用してバッキング Bean メンバーを設定すると、タグが認識されないというエラーが発生します。

プロジェクトは問題なくビルドおよびデプロイされます。デフォルトのページが表示され、setPropertyActionListener を使用したページ リクエストでエラーがスローされます。

他の同僚は、同じセットアップを使用してアプリケーションを正常に実行できます。ライブラリが不足しているか、ディレクトリまたはファイルにアクセス許可の問題があると推測しています。

設定:

  • ネットビーンズ 6.7.1
  • アパッチ トムキャット 6.0.18
  • JDK1.6
  • JavaServer Faces 1.2
  • Facelets

コード:

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:rich="http://richfaces.org/rich">

    <ui:composition template="/template.xhtml">

        <ui:define name="body">      
            <h:commandLink value="view" action="viewer">
                <f:setPropertyActionListener target="#{ViewerBean.ticket_id}" value="#{ticket.ticket_id}" />
            </h:commandLink>
        </ui:define>
    </ui:composition> 
</html>

スタックトレース: 完全なトレース

javax.servlet.ServletException: /portal/index.xhtml @65,125 タグ ライブラリは名前空間: http://java.sun.com/jsf/coreをサポートしていますが、名前 setPropertyActionListener に対してタグが定義されていません。

com.sun.facelets.tag.TagException: /portal/index.xhtml @65,125 タグ ライブラリは名前空間: http://java.sun.com/jsf/coreをサポートしていますが、名前 setPropertyActionListener に対してタグが定義されていません。

Apache のライブラリ:

  • 注釈-api.jar
  • カタリナ.jar
  • el-api.jar
  • jasper.jar
  • mysql-connector-java-5.1.7-bin.jar
  • tomcat-coyote.jar
  • tomcat-i18n-fr.jar
  • カタリナ-ant.jar
  • catalina-tribes.jar
  • jasper-jdt.jar
  • tomcat-dbcp.jar
  • tomcat-i18n-ja.jar
  • カタリナ-ha.jar
  • commons-logging-1.1.1.jar
  • jasper-el.jar
  • jsp-api.jar
  • サーブレット-api.jar
  • tomcat-i18n-es.jar

プロジェクトのライブラリ:

  • アクティベーション.jar
  • commons-digester.jar
  • ezmorph-1.0.6.jar
  • jstl.jar
  • richfaces-ui-3.3.0.GA.jar
  • commons-beanutils-1.8.0.jar
  • commons-lang-2.4.jar
  • jsf-api.jar
  • jxl.jar
  • 標準.jar
  • commons-beanutils.jar
  • commons-logging-1.1.1.jar
  • jsf-facelets.jar
  • メール.jar
  • commons-collections-3.2.jar
  • commons-logging.jar
  • jsf-impl.jar
  • richfaces-api-3.3.0.GA.jar
  • commons-collections.jar
  • el-impl-1.0.jar
  • json-lib-2.2.3-jdk15.jar
  • richfaces-impl-3.3.0.GA.jar
4

2 に答える 2

1

プロジェクトで使用している JSF のバージョンは正確ではありません。

実際、setPropertyActionListenerタグは JSF 1.2 に含まれており、JSF 1.1 プロジェクトでは使用できません。

それはあなたが遭遇した問題を説明するかもしれません...

于 2009-08-20T14:33:31.333 に答える
0

[編集]

この問題は再浮上しましたが、解決策を見つけたと思います。私のjsf-facelets.jarファイルに何か問題があったと思います。

最新バージョンをダウンロードしてプロジェクトに追加しました。今ではすべてが素晴らしいようです。

2010.01.26


正確な競合が何であるかを確認できなかったため、新規インストールを行いました。

私は、Netbeans Web サイトから手動でインストールされた Netbeans 6.7 を実行している Ubuntu ボックスを使用しています。Apache Tomcat は IDE とともにインストールされました。

最初に、Netbeans と Tomcat の両方の可視ディレクトリを削除しました。一部がひどく間違った場合に備えて、実際にそれらをゴミ箱に移動しました。

$ mv /home/bbryan/apps/netbeans6.7 /home/bbryan/.local/share/Trash
$ mv /home/bbryan/apps/apache-tomcat-6.0.18 /home/bbryan/.local/share/Trash

これら 2 つのディレクトリを削除した後、非表示の netbeans ディレクトリを削除しました。これは重要; そうしないと、netbeans と tomcat の次のインストールでは、良い点も悪い点も以前とまったく同じ設定になります。

$ mv /home/bbryan/.netbeans /home/bbryan/.local/share/Trash

3 つのディレクトリをすべて削除したら、新規インストールを行い、ローカル セットアップと BINGO にいくつかの小さな調整を加えました。

于 2009-08-22T07:57:39.347 に答える