問題タブ [composite-component]
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.
validation - JSF複合コンポーネントの検証
複合コンポーネントを作成し、いくつかのバリデーターをその子にアタッチしたいのですが、検証からのメッセージをその子ではなく複合コンポーネントにアタッチしたいです。
複合コンポーネントを使用するページでは、次のようなものが必要です。
メッセージは複合コンポーネント自体ではなく、コンポーネントの子に対するものであるため、機能しません。コンポーネント全体の作り方は?
またはさらに良いことに、次のようにバリデーターを複合コンポーネントに追加したいと思います。
そして、複合コンポーネント内に要素があるため、値としてブール値配列のようなものを受け取りh:selectBooleanCheckbox
ます。それは可能ですか?
validation - 複合コンポーネントのバリデーターは検証しますが、例外もスローします
バリデーターを複合コンポーネントにアタッチしたいのですが、内部のすべての子コンポーネントにアタッチしたいと思います。
だから私はページにあります:
検証は期待どおりに機能しますが、JSFは次のメッセージもスローします。
..../form.xhtml validator="#{bean.validationMethod}": The class 'my.package.Bean' does not have the property 'validationMethod'.
このメッセージを取り除くにはどうすればよいですか?
jsf - JSF2 複合 cc.attrs 式がアクション パラメータを正しく評価しない
動的に追加および削除できる電子メールアドレスのリストである JSF 複合コンポーネントがあります。
このコンポーネントは次のように使用されます。
「deleteEmail」アクションが呼び出されると、例外が発生します。
エラー [STDERR] 原因: javax.el.MethodNotFoundException: /resources/edit/emailAddresses.xhtml @34,130 action="#{cc.attrs.addressable.remove(email)}": メソッドが見つかりません: No-Interface ビューエンドポイント [ jboss.j2ee:jar=tephra.war,name=PersonAddressable,service=EJB3 ] およびセッション 3j011-mgweoj-ghfwhlvv-1-ghfy2e5j-e1.remove()
ただし、アクションを personAddressable.remove(email) に変更すると機能します! これは単純なパラメーター置換のように見え、違いはありません。パラメーターを持たない電子メール アドレスを追加するアクションは正常に機能します。
バッキング Bean が機能することを証明したので、バッキング Bean のコードは投稿しません。ただし、参考までに、これはステートフルな対話スコープ Bean (CDI) です。
el 2.2 を使用する JBoss AS6-M5 を使用しています。
java - JSF 2.0(Primefaces) - ID で参照する場合、複合コンポーネントに到達できません
global.jsf ページに埋め込まれた単純な複合コンポーネント (compositeComponent.jsf) があります。
問題は、ajax がこのコンポーネントを更新できないことです。どちらも:componentId
宣言formId:componentId
も機能しません。
ID 生成のために自分の Bean に独自のメソッド ジェネレータを記述する必要がありますか?
写真を参照してください。詳細については!
jsf-2 - JSF2.0: 複合コンポーネントの taglib で EL が解決されない
オフィスでカスタム複合コンポーネント taglib を作成しようとしていますが、EL で奇妙な問題が発生します。#{cc.attrs.[var] } のような式は、すでに空として解決されているようです。
jar に taglib を作成しようとしています。私のjarでは、ファイルを次のように並べています。
|_ /
.....|_ メタ-INF
..........|_ compo.taglib.xml
.........|_ リソース
...............|_ コンポーネント
...................|_ hello.xhtml
compo.taglib.xml には以下が含まれます。
hello.xhtml には以下が含まれます。
私のWebプロジェクトには、WEB-INF libに私のtaglibがjar、jsf-impl.jarおよびjsf-api.jar(Mojarraから)として含まれています。私のページは次のとおりです。
レンダリング時に「こんにちは!」と表示されます 「こんにちはジョン!」ではありません。属性値がどこかで失われているようです。このサンプルを tomcat 6.0.29 と Websphere 7 で試してみました。
私は何か間違ったことをしましたか?
jsf - JSF 2.0:複合コンポーネント属性を内部複合コンポーネントに渡す
私は次の場合があります:
したがって、複合コンポーネント内で、他の複合コンポーネントを呼び出し、「マスター」複合コンポーネントに指定されたパラメーターを内部複合コンポーネントに渡そうとしています。
x:someComponent
タグ内では、cc
暗黙のオブジェクトが代わりにこれを参照しているように見えるため、これは失敗しますx:someComponent
。
x:someComponent
回避策は、次のように実現できるように、の一時フィールドを作成することです。
しかし、それは非常に醜くて不便です。
この問題を回避する他の方法はありますか?
jsf-2 - Java フェイスレットの動的読み込みと複合コンポーネントの属性
現在、私は教育目的で JavaServer Faces 2.0 と Facelets ビュー テクノロジを使用して webpart テクノロジを実装しようとしています。facelet テンプレート、facelet カスタム コンポーネントを作成し、いくつかの facelet "template" クライアントを作成しました。しかし、1つのことに私は立ち往生しています。コントロールを動的に読み込んで置くことができませんcc:attributes
。
たとえば、静的テキストを含むページがある場合、またはそれを ManagedBean にバインドする場合、プロパティはui:include
すべてうまく機能します。
これが私のfaceletコントロールです(データバインディングはこのコントロール内にあります#{TreeBean.root}
:
しかしui:include
、でコントロールを指すと問題が発生しcc:attribute
ます。バッキング Bean からこの属性を初期化して「何か」を行う方法がわかりません。
たとえば、次のページがあります。
複合コントロールは次のとおりです。
およびバッキング Bean コード:
これはどのように行うことができますか?
jsf - Beanメソッドをコンポジットに渡す
WebBeanによって取得されたリストをJSF2.0のコンポーネントに渡す方法があるかどうか知りたいですか?webbean getListは、クライアントのリストをコンポーネントに返します。例えば:
成分:
ユーザーページは、Listオブジェクトを返すwebBeanの場所を渡す必要があります。
例を挙げていただけますか?
よろしくお願いします
java - JSF ビューの計算
JSF 2 では facelets が優先されるビュー宣言言語であることを知っています。
JSP から jsf への変換は非推奨ですか?
とにかく、特別なレイアウトを作成する必要があるため、Datatable を使用できません。代わりに、記事のコレクションをドロップする列として使用する 6 つの div があります。私の問題は、コレクション A が注入された JSF 複合コンポーネントがあることです。
物体。
次に、コンポーネントはコレクションのサイズを列ごとに均等に分割する必要があります。次に、それぞれに適切なオフセットとサイズを設定します
だから私はこれで終わる
では、各列がコレクションの一部を反復処理するように、これらのオフセットとサイズを計算するにはどうすればよいでしょうか? それとももっと良い方法がありますか?
java - 複合コンポーネントの ManagedBean
レイアウトが正しく機能するためにいくつかの計算を行う必要がある複合コンポーネントを開発しています。ELにとって複雑すぎる計算(実際には複雑ではありませんが、ELでは実行できません)。その複合コンポーネント専用の ManagedBean を作成できますか? 実際には、それが良い習慣であるかどうかの問題です。コンポーネント専用のマネージド Bean に頼る前に、多くのアプローチを試す必要があると思います。可能であれば、コンポーネントがレンダリングされる前にマネージド Bean ロジックを呼び出す方法を教えてください。何らかの属性に基づいて、内側の div の高さと幅を計算する必要があるとします。それは可能ですか?このような計算などを実行する複雑さをすべてコンポーネントにカプセル化したいと考えています。