Currently JSF does not support decomposition of a web application into smaller
reusable fragments. For example, you can't build a collection of pages, managed
beans, and navigation rules to perform a common task like completing a consumer
transaction (enter shipping info, billing info, etc.) and package it as a
reusable component. Instead, JSF treats a web application as one monolithic
entity, which becomes problematic in large application. It would be useful to
able to package a portion of a web application into a reusable library.