Overview JSF¶
Description¶
There are three JSF code generators that work hand in hand:
JSF Common Web-Fragment
JSF Web-Fragment
JSF Application
The JSF generators create source code, XHTML and configuration files that implement web applications. The generated artifacts support a highly modular software and system architecture. The generators allow to divide applications into reusable components (so-called web fragments). A web application is an assembly of those reusable components. Within a web application component the content of the web fragments can be customized.
Web applications created with the JSF generators result in a JEE WAR file that can be deployed in JEE application servers (the JEE Web profile is sufficient).
Note
You can still develop simple web applications by generating only one web fragment that contains all of your web pages. This web fragment then is packaged in a WAR file, together with the web fragment component that is generated by the JSF Common Web-Fragment
generator.
Deprecated generator JSF Common Web-Fragment
That generator’s output will be replaced by open-source components. Starting with version 3.x of the JSF generators the generation output will depend on the open-source components.
Prerequisites¶
Programming Languages, Technologies, Frameworks, Libraries¶
- Java
- Java Server Faces (JSF)
- PrimeFaces (JSF component library)
- HTML, JavaScript, CSS, AJAX
- Enterprise Java Beans (EJB)
- Contexts and Dependency Injection (CDI)
- Java Servlets
- JUnit, Selenium, Arquillian for testing
- A support library CommonsTest.jar that contains a set of abstract parent classes and a set of test components, one per JSF/PrimeFaces component.
- An open-source framework component org.generative_software.gapp.jsf.jar
Modeling¶
- Virtual Developer Modeler
- Domain Specific Languages: Basic, Ui, Persistence (optional), Function (optional), Test (optional)
Generation¶
- Virtual Developer Cloud Connector (Eclipse, Maven or CLI)
- You need additional generators to be able to generate a complete web application: