A user-interface component framework for web applications that allows you to include UI components (such as fields and buttons) on a page, convert and validate UI component data, save UI component data to server-side data stores, and maintain component st

Click on the image below to view it full size in an image viewer !
A user-interface component framework for web applications that allows you to include UI components (such as fields and buttons) on a page, convert and validate UI component data, save UI component data to server-side data stores, and maintain component st

The source text sentence is nearly as long as a Thomas Mann novel:

A user-interface component framework for web applications that allows you to include UI components (such as fields and buttons) on a page, convert and validate UI component data, save UI component data to server-side data stores, and maintain component state.

"Divide and Conquer" is our very good friend.

It's not clear (yet) whether a JavaEE application is a kind of 'web application', or whether a 'web application' is a part of a Java EE application.

Is it possible that a *JavaBean acts as a datastore to which 'UI component data' is saved ? And is saving the same as storing (permanently) ?

Also,it may be that the first attempt at a *Datastore model was naive, assuming that it only stores application data. Is 'UI component data' a special kind of application data, or should there perhaps be a more general *Data that both extend ?

Finally, since there are no candidate Classes mentioned that could 'convert', 'validate', or 'maintain component state', for the sake of analysis the *JavaServerFaces technology provides these services as interfaces.