問題タブ [remotecommand]

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 投票する
0 に答える
1457 参照

jsf - p:remoteCommand は、javascript のボタンの onclick イベントではなく、ページの読み込み時に実行されます

javascript を介してリモート コマンドを呼び出す必要があります。リモート コマンドは正常に動作していますが、ボタンの onclick イベントではなく、ページの読み込み時に呼び出されます。

以下は、私のxhtmlファイルコードとBeanコードです。

これがビーン関数です。ビーンはビュースコープです。

どんな助けでも大歓迎です。

ありがとう、

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

jsf - p:remoteCommand が機能しない場合のリダイレクト

何らかのアクションを行った後、ユーザーをホームページにリダイレクトする際に問題が発生しています。私はstackoverflowを検索し、特に@BalusCから多くの解決策を見つけましたが、どちらもうまくいきませんでした。

pageA - リモートコマンド:

pageA - コンテンツに署名するためのモーダル ダイアログを呼び出す送信ボタン

ユーザーが commandButton をクリックした後、Bean で実行されているいくつかのデータ ロジックがあり、モーダル ダイアログが独自の Bean で呼び出され、そこから p:remoteCommand が呼び出されます。

h:view.xhtml のメッセージ:

簡単に言えば、ユーザーが送信ボタン(ダイアログを呼び出す)を押すと、モーダルダイアログがポップアップし、ユーザーが送信ボタンをもう一度クリックすると、処理するロジックがいくつかあり、remoteCommand が呼び出されてポップアップが閉じられます。これは、リダイレクトを実行する必要がある瞬間ですが、ポップアップが閉じられた後に何も起こらず、エラーのみです:

アクションはありません。なぜ URL が null なのかわからないのですか?

編集 - 構成:

Liferay 6.2 CE GA3
Primefaces 5.2
Liferay Faces 3.2.5-ga6

0 投票する
0 に答える
893 参照

jsf - p:remote command update="@none" が他のフォーム コンポーネントをレンダリングするのはなぜですか?

プロジェクトへの定義されたログイン期間のタイムアウト メカニズムを作成したいと考えています。ユーザーがシステムをアイドルモードで待機させた場合、しばらくすると、システムで自動ログアウトのために何らかのアクションを生成したいと考えています。

フォームの base.xhtml のようなテンプレート ページに remoteCommand コンポーネントがあります。独自のフォームだけをレンダリングしたいのですが、ページ内のすべてのコンポーネントとフォームをレンダリングします。

これが私のコードです:

注: IdleMonitor を提案しないでください。プロジェクトの要件により、試してみましたが問題は解決しませんでした。

0 投票する
0 に答える
843 参照

jsf - 独自のオブジェクトをパラメーターとして RemoteCommand に渡す

独自のオブジェクトをパラメータとして Primefaces の remotecommand に渡そうとしています。

次の例を使用しました: http://www.primefaces.org/showcase-ext/sections/remoteCommand/methodParam.jsf

それでも、サーバーはパラメーターなしでメソッドを呼び出そうとしています。したがって、printParams(String, Date, Circle) の代わりに、printParams() を呼び出そうとします。メソッドが見つからないという例外が発生します。

0 投票する
0 に答える
591 参照

jsf - RemoteCommand を使用して JavaScript を介してオブジェクトを渡す

次のように、primefaces-extensions remoteCommand を介してオブジェクトを渡そうとしています。

これは私たちの remoteCommand タグです:

最後になりましたが、これはバッキング Bean のメソッドです。

これは私たちが得ているエラーです:

編集:at com.google.gson.Gson.fromJson(Gson.java:803)

0 投票する
0 に答える
815 参照

javascript - remoteCommand が JSF コンポーネントを適切に更新していません

JavaEE (primefaces、wildfly、Websocket) で開発された大規模なアプリケーションがあります。このアプリケーションの重要な機能の背後にある考え方は、2 人以上のユーザーが同時にオンラインになっている場合、お互いのステータスを確認できるということです。

たとえば、'Maik' と 'Andre' がオンラインの場合、Maik は Andre のオンライン ステータスを確認でき、Andre は Maik のステータスを確認できます。

Websocket (サーバー エンドポイント、クライアント側の Javascript Websocket API) を使用します。

クライアントは安全な WebSocket を介してユーザー ID (UUID) をサーバーに送信し、サーバーはそれらを Hashmap (キー: ユーザーが現在ログインしているページ ID、値: ユーザー ID) に保存します。サーバーは json 文字列をクライアントに返し、クライアントはその文字列をパラメーター化された RemoteCommand を使用してバッキング Bean に送信します。

xhtml ページの RemoteCommand は次のように使用されます。

RemoteCommand は、バッキング Bean 関数である showOnlineUSers() を呼び出します。

バッキング Bean 関数を呼び出した後、RemoteCommand は XHTML ページのコンポーネント「OnlineUsersFormId:onlineUserId」を更新します。ページ内の正確な jsf コンポーネントは次のとおりです。

問題: ロジックは正常に動作しますが、ユーザー (Maik) がページを離れたときに突然動作を停止しますが、彼の名前は他のユーザー (Andre) のページから削除されていません(サーバーは彼に Maik の名前を削除するように指示しますが、また、しばらくの間だけ正常に動作します)。私たちの直感によると、remoteCommand で「コンポーネントを更新する」と何かが異常に動作します。

どんな助けでも大歓迎です。

よろしく、タヒル

0 投票する
0 に答える
571 参照

primefaces - p:remoteCommand コンポーネントの更新が正しく機能しない

バッキング Bean メソッドを呼び出してすべてのオンライン ユーザーを表示するRemoteCommand (showOnlineUsers) があります。ただし、 (時々 )コンポーネント(OnlineUsersFormId:onlineUserId) を更新しません。

このリモート コマンドは、次の h:panelGroup を更新することになっています

このコードは正常に動作しますが、しばらくすると異常な動作をし、Chrome-Network-Debugger で不完全な部分応答メッセージを生成します。

生成されたメッセージの修正:

誤って生成されたメッセージ:

Google Chrome のネットワーク デバッガーで正しく生成されていないパーシャル レスポンスからOnlineUsersFormId:onlineUserIdが欠落していることは明らかです。そのため (私は推測します)、ページ上の panelGroup コンポーネントを更新しません。

注:コンポーネントを更新しないと、ページを更新しない限り、デバッガーで同じメッセージが繰り返されます。

0 投票する
0 に答える
20 参照

jsf - Java メソッドの起動シーケンスを制御する方法

2 つの Java メソッドを起動するシーケンスを制御するアシスタントが必要です。JSFフォームでは、メソッド「GeneratePDF」を呼び出すcommandLinkがあり、ユーザーはPDFファイルをダウンロードできます。その後、SQL ステートメントを実行するメソッド「UpdateDataTable」への 2 回目の呼び出しで、JSF フォームの dataTable を更新します。

以下のコードでは、2 番目のメソッド「UpdateDataTable」は呼び出されず、呼び出される唯一のメソッドは「GeneratePDF」です。コードは次のとおりです。

onComplete を onSuccess に変更しようとしましたが、残念ながら UpdateDataTable メソッドが呼び出されません。また、onClick を試してみたところ、最初に UpdateDataTable メソッドが起動され、次に GeneratePDf メソッドが起動されます。しかし、私の場合は、 GeneratePDF を起動してから UpdateDataTable を起動したいと考えています。