implement with pure JSF