問題タブ [omnifaces]

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.

0 投票する
1 に答える
1334 参照

jsf - カスタム例外ハンドラで javax.el.PropertyNotFoundException を処理する方法

私は omniFaces の AjaxExceptionHandler を試し (これは非常に役に立ちます)、java.lang.Throwableすべての種類の要求 (ajax 要求だけでなく) から発生する例外をキャッチして例外を設定するように構成しました。

javax.el.PropertyNotFoundExceptionうまく機能しますが、開発者が EL 式のスペルを間違えた場合はキャッチしません。

質問は次のとおりです。JSF2のメカニズムでどのように処理javax.el.PropertyNotFoundExceptionするのですか?ExceptionHandlerFactory

0 投票する
1 に答える
3247 参照

java - 2 番目の ajax リクエストを呼び出すと、f:viewParam と Converter および ViewScoped の例外が発生する

これf:viewParamをバインドして検証して auserIdをに変換しようとすると、予期しない結果Playerが得られました。

私のコンバーターはこのように見えます

3 つのリンク (Harry、Tom、Peter) をクリックすると、コンバーターがうまく機能します。ID を変換playerし、マネージド Bean にバインドします。次に、テキストボックスに何かを入力してクリックします。最初は正常に機能し、入力した内容がボタンの横に表示されますが、入力内容を変更してもう一度Switchクリックすると、エラーメッセージが表示されます。これはエラーメッセージですのために。f:viewParam を取り出した場合、すべて正常に動作します。驚いたことに、f:viewParam から o:viewParam (OmniFaces) に切り替えると、うまく機能します。SwitchBad Request. Please use a link from within the systemrequiredf:viewParam

0 投票する
1 に答える
2514 参照

java - 検証エラーの後、後続のajaxリクエストはBeanからではなくUIコンポーネントから値を取得します

私のJSF2ベースのアプリケーションには、(他のUIコンポーネントの中でも)いくつかのチェックボックスを含むフォームがあります。

チェックボックスに、チェックされたときに起動するajaxリクエストを登録しました。ajaxリクエストは、実際にはバッキングBeanの別のチェックボックスの値を更新するだけです。その結果、他のチェックボックスもオンになります(再レンダリングされると、レンダリング応答フェーズでバッキングBeanから更新された値を取得するため)。

これは、フォーム全体が送信され、検証エラーが発生するまで正常に機能します。その後、ajaxリクエストは引き続き機能し、バッキングBeanの値を変更しますが、更新されたチェックボックスを再レンダリングするフェーズでは、その値はバッキングBeanからではなく、ComponentStateHelperクラスから取得されたキャッシュ値から取得されます。

私が理解している限り、これはJSF 2の新機能に使用され、コンポーネントツリーへの部分的な変更のみを保存します。

私が理解していないのは、これは検証フェーズとどのように関連しているのかということです。StateHelper検証でエラーが見つかったときに、チェックボックスのクラスにキャッシュされた値があるのはなぜですか?

0 投票する
1 に答える
582 参照

jsf - Omnifaces CombinedResourceHandler-特定のリソースを抑制する方法はありますか?

Omnifaces1.0をRichfaces4.0と組み合わせて使用​​しています。通常、Richfacesに含まれているcss / jsの一部は不要で扱いにくいため、抑制しています。これを行うには、レンダラータイプのjavax.faces.resource.Scriptまたはjavax.faces.resource.Stylesheetのカスタムレンダラーを定義します。

org.omnifaces.resourcehandler.CombinedResourceHandlerを有効にすると、以前に抑制されていたCSSの一部が結合されているように見えます。ResourceHandlerから除外したいアセットを定義する方法はありますか?

0 投票する
1 に答える
708 参照

jsf - 他のフィールドの前にinputHiddenからidがロードされたエンティティBeanにリクエスト値を適用する

私は次のファセットテンプレートを持っています:

およびリクエストスコープのBean:

最初のページの読み込みは適切に機能し、エンティティが読み込まれてフォームに表示され、inputHiddenがエンティティIDに設定されます。問題は、送信スローです。

おそらく、getUserがsetIdの前に呼び出されたためです。どうすればこれを解決できますか?私は本当にリクエストスコープのBeanが欲しいのですが、これは少なくともviewaccessスコープのBeanで簡単に解決できることを知っています。

編集:プロセス検証フェーズで例外がスローされることに気づきました。最初は、モデル値の更新フェーズで例外がスローされると思いました。「privateUser」を「privateUseruser= new User()」に変更しましたが、今は大丈夫ですが、少し変な感じがします。

よろしく、パベル

0 投票する
1 に答える
778 参照

jsf-2 - Omnifaces - FullAjaxExceptionHandler - f:ajax onevent ステータスは成功です

私は Omnifaces FullAjaxExceptionHandler を使用しています - これはうまく機能していますが、ajax 呼び出しを行い、status == 'success' をチェックする onevent 関数がある場合、FullAjaxExceptionHandler がエラー ページをレンダリングしたにもかかわらず、まだ呼び出されています。(私はJSFを使用しています(グラスフィッシュ3.1.1のMojarra 2.1.3)

JSF コード:

<h:commandButton value="myButton"> <f:ajax listener="#{myBean.myBeanFunction()}" render="someDiv" onevent="myFunction"/> </h:commandButton>

Javascript コード:

function myFunction(e) { if (e.status == 'success') { alert("Success"); } }

そのため、FullAjaxExceptionHandler によってエラー ページが表示される場合は、javascript 関数を実行しない方法が必要です。

0 投票する
1 に答える
318 参照

jsf - JSF 2.0 -- クラスター全体で OmniFaces 結合リソース キャッシュを共有またはプライムする

クラスター全体で結合されたリソースを使用する JSF の方法はありますか? 基本的に、リソースを導入するクラスター内の最初のサーバーがそれを他のサーバーのリソースキャッシュと同期できるソリューションを探しています。

0 投票する
1 に答える
2414 参照

jsf-2 - JSF で InputStream を動的イメージとして表示する

InputStreamOmniFaces を使用して JSF 2.0 に動的イメージを埋め込んで表示するにはどうすればよいですか?

0 投票する
1 に答える
339 参照

jsf - omn​​ifaces にはページネーション関連のコンポーネントがありますか?

JSF(データテーブル)の実際のページネーションに役立つコンポーネントを探すために、オムニフェイスのショーケースを検索しましたが、成功しませんでした。

あるのか知っていますか?

それは素晴らしい機能です。

https://rogerkeays.com/blog/paging-large-data-sets-with-a-lazylistで取ったアプローチに少し取り組み、以下のコードを用意しました。

これは非常に汎用的で、任意の JSF コンポーネント ライブラリまたは永続化 API で使用できます。

開発者は、クエリを実行するためにビジネス ファサードまたはエンティティ マネージャにアクセスできる JSF マネージド Bean (バッキング Bean) に遅延リストを実装する必要があります。

たぶん、このようなアプローチはオムニフェイスに適合する可能性があります.

0 投票する
2 に答える
1514 参照

jsf - PrimeFaces + PrimeFaces Mobile + MyFaces ExtVal でのレンダリングの問題

PrimeFaces、PrimeFaces Mobile、MyFaces ExtVal の 3 つのフレームワークを一緒に使用しようとしています。ライブラリのバージョンは、PF 3.3.1、PF Mobile 0.9.3、MyFaces ExtVal 2.0.5 です。次のコードを検討してください。

プロジェクトに PrimeFaces と Mobile jar しかない場合、レンダリングされた commandButton は期待どおりです。

これはデフォルトの PrimeFaces レンダラーです。f:view を renderKitId を PRIMEFACES_MOBILE として構成すると、レンダリングされるボタンは次のようになります。

こちらもさすがにOK。ここで、MyFaces ExtVal jar を追加すると、すべてが壊れ、PRIMEFACES_MOBILE だけがコンポーネントのレンダラーになります。動作をテストするために、jar を追加しました: myfaces-extval-bean-validation-2.0.5.jar、myfaces-extval-core-2.0.5.jar、および myfaces-extval-property-validation-2.0.5.jar。次に、renderKitId を削除して、デフォルトの PrimeFaces ライブラリを使用する必要がありますが、結果は次のようになります。

f:view の renderKitId を HTML_BASIC に強制しようとしましたが、commandButton の PrimeFaces Mobile バージョンをレンダリングし続けます。

皆さん、何か提案はありますか?RenderKitId を定義する前は、システムは問題ありませんでしたが、ライブラリをアップグレードすると、このエラーが発生しました。PrimeFaces フォーラムに投稿しましたが、解決方法がわかりませんでした。また、なぜこのようなことが起こっているのかわかりません。