Я думаю, что вопрос № 1 связан с тем, что ваш компонент находится в области запроса.
Если вы используете JSF2, вы можете написать представление вместо запроса в
<managed-bean-scope>view</managed-bean-scope>
Если вы используете JSF1.2 и RichFaces, вы можете использовать
<a4j:keepAlive name="ChartBean" />
Подробнее о a4j: keepAlive здесь
Если вы не используете ничего из вышеперечисленного, рассмотрите возможность использования области сеанса и, возможно, удаления компонента из области после использования с:
session.removeAttribute("ChartBean");