問題タブ [jsf-2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - JSF 1.0 対 JSF 2.0
JSF のこれら 2 つのバージョン (JSF 1.0 と JSF 2.0) の違いは何ですか? 私はJavaが初めてなので、その違いはアーキテクチャレベルにあるだけです。しかし、全体像としては、それがアプリケーション開発にどの程度影響するかわかりませんか?
また、課される MVC は JSF と Spring で異なります。JSF によってアーキテクチャが改善されたとしても、Spring はまだまだ使用されています。上記の点でSpringの重要性は何ですか?
java - ui:repeat で commandButton を公開する JSF 2 コンポジット:actionSource
私の複合コンポーネントには、他の静的なものの中でも、次のようなコマンド ボタンを持つ ui:repeat があります。
ここで、このイベントを複合インターフェイスで公開して、自分のページでイベント リスナーをアタッチし、f:ajax に結合できるようにします。
ui:repeat の外側にある場合 (つまり、そのようなボタンが 1 つしか存在しない場合)、次のように非常に簡単でした。
しかし、この場合は失敗します。その ID ( addToFavs ) によるコンポーネントは 1 つではなく、多数あるためです。インターフェイスでこれらのボタンを公開する方法を知っていますか?
よろしく、
プラデュムナ
java - JSF 2.0 複合コンポーネント - ajax レンダリング パラメータ OUTSIDE コンポーネント定義
単純なリンクの「prettifier」など、何らかのアクション パラメータを使用する単純な複合コンポーネントを考えてみましょう。私はそれを「アジャクシファイ」したい。
クライアントの動作を通じてイベントを公開します。私はこのように使用します:
私が何をしたいのかがわかります。コンポジット定義の外で ajax レンダリングを実行したいのです。render を「outside」に設定するだけで恐ろしい<f:ajax> contains an unknown id
エラーが発生します。
はい、コンテナに名前を付けることは知っています。また、先頭にコロンを付けて絶対パスを指定できることも知っていますが、それは非常に扱いにくいものです。さらにいくつかのレイヤーにまとめると (これが要点です)、これらの参照を手動で連鎖させる必要があります。
render="../outside"
コンポーネントの親コンテナへの参照をスキップするような相対参照を行うことはできますか?
私は a4j で jsf 1 アプリを作成しましたが、このパターンはいたるところで使用されていました。
java - JSF 2.0 テンプレート化と MB の注入 || CDI ビーン
問題: マネージド Bean がテンプレートによって注入されません。
目標: テンプレートのログアウト ボタンを遅くしたい。
シナリオ: Web パーツ用の jsf 2.0 を使用して j2ee 6 アプリケーションを構築しています。
テンプレートファイル layout/template.xhtml
テンプレート クライアント index.xhtml :
web.xml での face 宣言
SecurityBacking.java :
ご覧のとおり:
と
layout/template.xhtml と index.xhtml では減速されますが、layout/template.xhtml で減速されたボタンは同時に動作せず、index.xhtml で動作します。
Safari Web インスペクターを見ると、次のように表示されます。
index.xhtml での減速用
およびlayout/template.xhtmlの場合
Bean がタグ内にダクレット テンプレートを注入していないことは理解していますが、j2ee 6 のチュートリアルと仕様でこれについて何も見つけていないか、そのような情報に気付くかもしれません。
Q1: 注射については正しいですか?
Q2: テンプレートを介して注入しないのはなぜですか?
Q3: この場合、テンプレート化の別の方法は何ですか?
Q4: この場合のベスト プラクティスは何ですか?
(私はglassfish v3 Webサーバーを使用しています)
ありがとうございました !
maven-2 - JSF 2.0 の i18n に関する問題 (ウクライナ語とロシア語)
目標: jsf の i18n を使いたい
シナリオ:
リソースバンドルの作成 (utf-8)
ファイル情報:
それを使用して
顔構成:
いくつかの index.xhtml で:
問題: その結果、これらのボタンのエンコードされたテキストが間違っています。
私はnative2asciiin mavenを使用しようとしました
pom.xml :
異なるシンボルを取得しましたが、それでも間違っています。
でメッセージを渡すことでトリックを作成しました:
Messages.java :
成功しました。有効なテキストを取得しましたが、jsf で使用するのは醜いです。
情報: 私はグラスフィッシュ v3、mac osx を使用しています (つまり、デフォルトで latin1 または ISO-8859-1 をエンコードします。不明です。)
Q1: 問題の原因は何ですか (jsf i18n の不適切なエンコーディング)? [閉まっている]
Q2: maven の助けを借りて、またはいくつかの jsf futures を使用して、jsf の String (value.getBytes("ISO-8859-1"),"UTF-8") のようなトリックを行うことは可能ですか?
Q3: Maven 構成の何が問題になっていますか?
ありがとうございました!
jsf - JSF 2 cc: バッキング Bean に属性を渡す
特定の製品番号の画像ビューアであるカスタム コンポーネントを作成しています。BalusC の ImageServlet の修正版を使用してこれらのファイルにアクセスします。
次に、複合コンポーネントを作成しました。
ご覧のとおり、マネージド Bean からイメージのリストを取得しているだけです。これが本当に必要な唯一の理由は、特定の製品にいくつの画像があるかを知る必要があるからです。これは大きく変動する可能性があります (8 から 100 の範囲)。そのコードは次のとおりです。
繰り返し処理するデータを保持するための単純なオブジェクトがあります。
最後に、 http://localhost:8080/project-name/testImages.xhtml?id=213123の URL を使用して、この複合コンポーネントをテストします。testImages.xhtml のコードは次のとおりです。
ここに問題があります。アプリケーションと複合コンポーネント間の相互作用の唯一のポイントは、タグでなければなりません<sdCom:imageViewer listID="test" />
。ただし、これは漏れやすい抽象化です。id
Managed Bean には、リクエストのパラメーターに基づいて製品番号が付与されます。これは非常に望ましくありません。コンポーネントとそれを使用するアプリとの間の結合がより緊密になります。理想的には、次のようにタグを使用する必要があります: <sdCom:imageViewer listID="test" productNumber="213123"/>
. ただし、これを行う方法がわかりませんが、作成する必要がある画像の数はまだわかっています。
前もって感謝します、ザック
編集:製品番号を受け取り、その製品が持つ画像の数を返すサーブレットを呼び出すことは完全に受け入れられます。n
ただし、コレクション内のオブジェクトごとに 1 回実行する (foreach ループ) のではなく、ループ回 (for ループ) を実行する方法をまだ見つけていません。@ManagedProperty("#{param.id}")
バッキングビーンからそれを削除することを含む解決策には、私はかなり満足しています。
jsf - の外部のコンポーネントを更新するコンポーネントのコンテキスト
コンポーネントのコンテキスト外に配置されたコンポーネントをJSFに更新させることは可能ですか?
現在、次のページが機能していません。
#out
コンポーネントを<h:form>
ページ内に配置すると、正しくレンダリングされることを知っています。しかし、#out
コンポーネントをフォームの外に配置する方法はありますか(たとえば、現在の場所)?
jsf - JSF は、レンダリングされた HTML 出力ではなく、プレーン/生の XHTML/XML/EL ソースを含む空白/解析されていないページを返します
以下のようなFaceletsファイルがいくつかあります。
どちらのページも/templates
ディレクトリのテンプレートを使用しています。私/index.xhtml
のブラウザで問題なく開きます。生成された HTML 出力を取得します。/index.xhtml
ファイルからファイルへのリンクがあり/register.xhtml
ます。
ただし、 my/register.xhtml
は解析されず、生成された HTML 出力ではなく、プレーンな XHTML / 生の XML として返されます。形式のすべての EL 式は#{...}
、結果が出力されるのではなく、そのまま表示されます。ブラウザでページを右クリックしてView page sourceを実行すると、生成された HTML 出力ではなく元の XHTML ソース コードが表示されます。たとえば、 は に<h:body>
なりませんでした<body>
。テンプレートが実行されていないようです。
ただし、ブラウザのアドレスバーで/register.xhtml
likeを開くと、正しく表示されます。/faces/register.xhtml
これはどのように発生し、どうすれば解決できますか?
xhtml - JSF2: cc:attribute をリスト内の特定のオブジェクト タイプに制限する
次のようなマネージド Bean があるとします。
リストを属性として受け入れるカスタムコンポーネントがありました:
これが機能することを確認するにはどうすればよいですか:
しかし、これはしませんでした:
つまり、私がしたいことは次のcc:attribute
とおりです。
しかし、私たちが知っているように、xhtml は > や < の使用に親切ではありません。また、ジェネリックはコンパイル時にのみチェックされるため、これがどのように行われるかわかりません。これが可能かどうか誰にもわかりますか?
java - 簡単な JSF コマンド ボタンのサンプルはありますか?
commandButtons にアクションを実行させるのに苦労しています (奇妙なことに、Bean からデータをプルしてページに含めるのに問題はありません)。私のコードを他の場所に投稿し、他の人にレビューしてもらいました。これまでのところ、運がありません。ですから、おそらく別のタクトが適切であると考えています。アクションを正常に呼び出すことができる commandButton を持つプロジェクトの非常に単純で基本的なサンプル コードを教えてもらえますか?