Cómo hacer doble clic en prevención en JSF 2

Tenemos algunas páginas de búsqueda que se ejecutan en contra de una gran cantidad de datos y tardan un tiempo en completarse. Cuando un usuario hace clic en el botón de búsqueda, nos gustaría que no les permitamos enviar el resultado de la búsqueda por segunda vez.

¿Existe alguna práctica recomendada para realizar la detección / prevención de "doble clic" en JSF?

El componente PrimeFaces parece que puede hacer lo que queramos, ya que deshabilitará la interfaz de usuario durante un período de tiempo entre el momento en que se hace clic en el botón de búsqueda y cuando se completa la búsqueda, pero ¿existe alguna estrategia más genérica que podamos usar (quizás algo que no sea?) depende de PrimeFaces)? Idealmente, cualquier clic en el botón se desactivará o ignorará hasta que se complete la búsqueda. No necesariamente tenemos que deshabilitar la IU completa (como le permite hacerlo a blockUI).

Respuestas a la pregunta(6)

Su respuesta a la pregunta