複数のp:tabがあるp:tabViewコンポーネントを使用しています。p:tabの1つには、rowTogglerを含む列を保持するデータテーブルが含まれています。
<p:column style="width:4%">
<p:rowToggler />
</p:column>
そして別のp:rowExpansion:
<p:rowExpansion>
<p:graphicImage id="thumbnailImage" value="/api/downloadFile/thumb/#{item.revisionId}"/>
</p:rowExpansion>
レンダリングされたデータテーブルのいずれかの行で行トグルをクリックすると、必要に応じて画像を取得するだけでなく、tabView内の各タブも再レンダリングされることに気付きます。これにより、サーバーへの複数の不要な呼び出しが発生し、サーバーに余分な負荷がかかり、ユーザーエクスペリエンスとパフォーマンスに悪影響を及ぼします。たとえば、行が実際に拡張されるまで4秒待機します。
トグルイベントが波打ってすべてのタブが再レンダリングされるのを防ぐにはどうすればよいですか?
Primefaces4.0-SNAPSHOTを使用しています。