問題タブ [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.
jsf-2 - JSFオプションの古い値は、それらをクリアした後に返されます
JSF、PrimeFaces 3.2、Omnifaces 1.1、JBoss AS 7.1.1、Final、Mojarra2.1.7を使用しています
次のように、両方とも必須ではない2つの数値フィールドを持つフォームがあります。
また、faces-configでOmniFacesResetInputAjaxActionListenerを設定しました。
Beanプロパティfield1およびfield2は整数です。
ここで問題となるのは、num1に123と入力し、num2に345と入力して、[OK]をクリックした場合です。次に、num1から123を削除し、num2にabcを配置するとします。次に、検証(変換)エラーが表示されますが、123が戻ってきます!
両方をrequired=trueにすると、すべて問題ありません。
オプションのフィールドでこれを機能させる方法はありますか?
jsf - FullAjaxExceptionHandlerを使用する場合のStringIndexOutOfBoundsException
omnifacesのFullAjaxExceptionHandlerを使用しようとしていますが、で取得StringIndexOutOfBoundsException
していorg.omnifaces.util.Faces.normalizeViewId(Faces.java:312) [omnifaces-1.1.jar:1.1]
ます。
私のweb.xmlファイルには次のエラー設定があります。
ErroServlet
リクエストのURLに応じて、正しいエラーページにリダイレクトするサーブレットはどこにありますか(2つの異なるエラーページがあります)。
を使用しようとしているFullAjaxExceptionHandler
ので、ajaxリクエスト中にスローされた例外も処理されます。
私のErroServletは、以下を使用して、それがAjaxリクエストであるかどうかをチェックします。
trueの場合、以下を使用してリダイレクトします。
私が言ったようStringIndexOutOfBoundsException
に、サーブレットが完了した後に取得しています。また、ページは視覚的にリダイレクトされません。
フルスタックトレース:
jsf - OmniFaces の of:printStackTrace を使用すると NullPointerException が発生する
OmniFaces を使用して、ショーケースのこのページのように、適切で詳細なエラー ページを表示しています。
ここに私のエラーページがあります:
ページはうまく表示されますp:commandButton
が、ページの最後にある をクリックすると、 で NullPointerException が発生しof:printStackTrace
ます。関数が既に呼び出されて結果が出力されているため、なぜこれが起こるのか理解できません。別のフォーム内にあるボタンをクリックすると、JSF が関数を再度呼び出そうとする理由がわかりません。さらに奇妙なことです。
commandButton をクリックしたときの完全なスタック トレース:
jsf - 無効な入力のjsfハイライトラベル
無効な入力ラベルに特定のスタイルを適用する簡単な可能性はありますか?
入力自体の仕事をするオムニフェイスハイライトコンポーネントを見てきましたが、私のプロジェクトに指定されたスタイルガイドは、入力のラベルにこれを強制します。
このようなものは素晴らしいでしょう:
ajax - p:ajax 経由で OmniFaces Ajax.updateColumn() または Ajax.updateRow() を使用する方法
OmniFaces 1.3 (SNAPSHOT) Ajax ユーティリティの Ajax.updateColumn() メソッドを使用しようとしています。具体的には、次の xhtml を含む h:panelGroup (または p:outputPanel) である p:ajax update=":pageContentPanel" の使用を、Ajax.updateColumn(table, 1) の使用に置き換えたいと考えています。
Bean には、p:ajax listener="..." によって参照される次のものがあります。
Ajax.updateColumn() を使用しようとしたときに、「HtmlDataTable tripDatesDataTable」を属性として Bean に追加しました。
Bean は JSF @SessionScoped マネージド Bean です。p:ajax (上記の xhtml の p:calendar に属します) が実行されたときに Ajax.updateColumn() を呼び出す方法を教えてください。ありがとう。
ajax - OmniFaces AjaxユーティリティのupdateColumn()がp:dataTableを更新しない
最近、OmniFaces Ajax.updateColumn()に関する私の質問に次のように回答しました。
p:ajaxを介してOmniFaces Ajax.updateColumn()またはAjax.updateRow()を使用する方法
その場合、dataTableはJSF標準のh:dataTableであり、それはうまく機能しました。
さて、この場合、エンドユーザーがp:dataTableの外部に存在するp:calendarコンポーネントを介して日付を選択したときに、PrimeFaces p:dataTableを更新しようとしています。p:dataTablexhtmlは次のとおりです。
当初および現在本番環境にあるp:calendar p:ajax update = "..."は、フライトp:dataTable全体を更新するため、p:dataTableの日付列が正常に更新されます。壊れていない場合は修正しないでください。しかし、今日はこのコードとxhtmlを変更していたので、OmniFaces AjaxユーティリティのupdateColumn()を使用して、すべての「1つの」列のみを更新したいと思いました。このPrimeFacesp:dataTableの行。
以下は、エンドユーザーがp:calendarを介して日付を選択したときに実行されるコードフラグメントです。これは、OmniFaces AjaxユーティリティのupdateColumn()を呼び出すコードです。
以下はPOJOの定義です。
テスト中に、サーバーログに次の情報が表示されました。
つまり、PrimeFaces p:dataTableの適切な参照を取得したので、タイプUIDataのコンポーネントをAjax.updateColumn()に渡しました。
最終結果、PrimeFacesdataTableはOmniFacesAjaxユーティリティのupdateColumn()によって更新されませんでした。
Ajax.updateColumn(...)をコメントアウトし、update = "..."をp:calendar p:ajaxに再度追加すると、PrimeFacesdataTableが正常に更新されます。
PrimeFaces dataTableがAjax.updateColumn(...)を介して更新されるようにするために何をする必要があるかについてアドバイスしてください。ありがとう。
jsf-2 - ui:repeat 内の Primefaces ManyCheckbox は、最後のループに対してのみ setter メソッドを呼び出します
特定のオブジェクト クラス (-variable によって提供される) のリストからアイテムを取得し<p:selectManyCheckbox>
、選択したアイテムを同じオブジェクト クラスの別のリストに保存することになっています。ただし、最後のエントリ (の最後の繰り返し) に対してのみセッター メソッドを呼び出します。<ui:repeat>
<ui:repeat>
#{cartBean.setSelectedExtras}
<ui:repeat>
更新:
BalusC が提案した方法で上記の構成を変更しました。
バッキング Bean の宣言は次のようになりました。
の最初のループによって作成されたチェックボックスをチェックして、同じ内部<ui:repeat>
をクリックすると、のセッターメソッドは呼び出されません。の最後のループで作成されたチェックボックスをオンにしてクリックすると、例外が発生します。 <p:commandButton>
<h:form>
selectedExtras
<ui:repeat>
<p:commandButton>
jsf - OmniFacesキャッシュコンポーネントはリソースキャッシングに適していますか?
以下の質問、
Primefaces、JQueryスクリプト、CSSファイルは、ページの更新とajaxページの更新ごとに読み込まれます。リクエストごとにダウンロードするのではなく、キャッシュからファイルを取得する方法。
次のように尋ねられました:
各ページの更新のためのPrimefacesスクリプトとcssファイルの読み込み
OmniFaces o:cacheコンポーネントをお勧めします。この場合、o:cacheを使用できますか、それともサーブレットフィルタを使用するのが最善ですか?
jsf - OmniFaces Components utilを使用して、XHTMLページ上のコンポーネントのHTML / CSSプロパティ値を取得するにはどうすればよいですか?
次のレンダリングされたHTMLがあります。
このPrimeFacesExtensionlayoutPane(pe:layoutPane)にIDを割り当てたので、OmniFacesComponents.findComponentおよびJSFUIComponentを介してBeanからの表示CSSを確認したいと思います。
以下に関するBalusCの回答に基づく:
拡張PrimeFacesコンポーネントに渡された属性へのアクセス
Beanには次のものがあります。
サーバーログには常に次のものが含まれます。
お知らせ下さい。ありがとう。
jsf - OmniFaces JARで、Tomcat7.0.32でのアプリの起動または実行が許可されない
Glassfish3.1.2.2からTomcat7.0.32に移行しようとしています。これは、Atmosphere(PrimeFaces Push)はTomcatで完全に機能しますが、Glassfishでは機能しないと誰もが言っているためです。
以下で説明するエラーを渡すために、Mojarra2.1.4JARをTomcat/libに追加しました。
java.lang.ClassNotFoundException:com.sun.faces.config.ConfigureListener
エラーの原因となっているため、クラスパスからOmniFaces(1.3 SNAPSHOT)JARを削除する必要があるようです。FullAjaxExceptionHandlerが最初にエラーとして表示されたため、下から上に読むのが最適かもしれません。そのため、アプリからコメントし、次にOmniPartialViewが表示されましたが、正直なところ、OmniFacesを削除したくないです。
OmniFacesは、以下で説明するエラーを引き起こしています。
ファクトリが見つかりませんでした:javax.faces.application.ApplicationFactory
以下はサーバーログです。下から上に読んでください。
お知らせ下さい。ありがとう。