The “Getting started with g9” documentation provides an introduction to the functionality and features of g9 and contains a tutorial that takes you through the steps in building an application. To facilitate the process, some example projects are included with g9 that will be imported into your workspace. These projects show examples for both a Java Swing client as well as web clients using ReactJS or ICEfaces/JSF.
In the tutorial you will perform the following steps which are all detailed in the documentation:
- Installation. You will install Eclipse if it is not already installed. (Eclipse IDE for Java and DSL Developers is recommended.) You will also need to install the g9 plug-ins, Apache Maven for supporting builds, the Derby database and ICEfaces.
- Create the QuickStart Swing Project. This example project will help you get set up for creating user interfaces based on Java Swing. It contains a domain model using Enterprise Architect that illustrates a fictitious record shop company application.
- Model your Dialogs. You will model a user-interface to create dialogs and work with dialog resources, object selections and events.
- Generate Java Swing Code. You will generate the code for the domain classes, the service code, the client code as well as the database schema and hibernate mapping code.
- Create the QuickStart ReactJS Project. This example project contains the code for the React web client.
- Generate the ReactJS client code. You will generate the client code using the ReactJS generator.
- Compile and run the application. You will compile the code and run the applications. The web app is started with npm.
- Create the QuickStart ICEfaces Project. This example project contains the code for the ICEfaces web client.
- Generate the ICEfaces client code. You will generate the client code using the ICEfaces generator.
- Compile and run the application. You will compile the code and run the applications. The web app requires the Jetty server to be started.
The “Getting started with WSg” is intended to provide an introduction to the functionality and features of g9’s Web Services capabilities (WSg) and demonstrate modeling and code generation with WSg. The documentation provides a step by step description on how to utilize domain models with classes and interfaces to create/generate the Web Service plumbing between a client consuming services and a server offering those services. The example consist of multiple projects:
- Client project with code for the client written as jUnit tests
- Server project with the service implementations run as web application
- Domain project common for the client and server, housing the domain classes (initially it is empty)
- Model project with the domain model, specific WSg models and code generation capabilities