Liferayの同じページで2つのVaadinポートレットを使用しています。最初の行にはエントリのテーブルが表示され、各行にはこのエントリの詳細を表示するボタンがあります。
ボタンがクリックされると、IPCイベントが送信され、2番目のポートレットによって受信されます。2番目のポートレットは、コンテンツを表示するテーブルビューにも切り替わります。
最初のポートレットの閉じるボタンをクリックすると、2番目のポートレットは再びIPCイベントを受信し、元の状態に戻ります。これは、LiferayIPCリスナーのみが接続された空白のビューです。
私の問題は、3回目のクリック後に、Liferayによる非同期エラーが発生することです。ビューが変更されたとき、私は常にそれをメインウィンドウに添付します。そのため、同じ名前のウィンドウを追加することはありません。
ページ上で1つのポートレットのみを使用する場合、問題なく前後に切り替えることができます。ある時点で、ブラウザがクライアント側でイベントを発生させたいのに、IPCがサーバー側ですでになくなっている可能性がありますか?
この問題の原因を特定するのは非常に困難です。