The RichFaces framework is made up of two tag libraries.
rich tag library: It includes the high-level components for building web applications. It provides self contained, ready to use components.
a4j tag library: It includes the low-level ajax functionality.
It allows us to make use of custom Ajax behavior with existing components as well as leverage the many ready-made, self-contained components. These components don’t require additional configuration in order to send requests or update.
Fig: Request Processing Flow