Я думаю, что у RichFaces есть какой-то компонент для этого - как и для почти всего. Но я бы порекомендовал способ сервлета, см. Другой ответ.
Кроме того, обязательно поместите некоторый статический кэш содержимого перед вашим JSF-приложением - извлечение его из БД каждый раз НЕ является хорошей идеей.