This guide walks through the process of getting an application from the model in the Prime Radiant to a working, running application. The interity of this process is done on the ApplicationInstance page of the Prime Radiant. This guide assumes the application was correctly imported.
Checking the settings
When building an application, it is important to check the settings.
Name, short Name and application
Self-explanatory, but be sure to check the standards for more info.
Custom (Source) base
If the application uses a custom base (which is the case with imported applications), be sure to set the correct base. Otherwise, use Descriptors 3.0
The expand base will determine where the project will be expanded to. Choose Expansions 3.0-PR for the default location.
The version of the expanders to be used. As of writing, this is version 18.104.22.168.
Global option settings
Options regarding the build tool, security settings and more. For a Maven build, choose 3.0 Modern.
The PR UI to be used. Set to either 3.0 Modern or 3.1 Future.
Business logic settings
The back-end options to be used (database). When first starting, choose Standard HSQL.
Sets the underlying technologies, such as the Java version, Jonas version and more. Use 3.0 Default for most projects, or a custom defined infrastructure.
When provisioning, the Prime Radiant will prepare the expand location for expansion. The provisioning should be used when expanding an application for the first time, or when the changes in an expanded application need to be forgotten. If the latter case is not true, it is important to harvest beforehand.
Expands the application. It is important to note that this expansion will only create and overwrite, not remove features. If removal is necessary, use the provisioning.
Writing custom code
After expansion, the developer has a skeleton where they can write their custom code. It is important to write this code between the anchors, as all other code will not be harvested. A few settings need to be adjusted if Intellij is used. Firstly, the version of Maven needs to be set to the one included in the infrastructure folder. Secondly, the settings for combining imports need to be adjusted. By default, Intellij will compact import statements when multiple classes from the same package are used by using the asterisk (.*) notation. This will result in imported classes being put outside of the import anchors. Adjust the settings so that Intellij will not automatically compact these import statements.
After expansion and after the developer has written their custom implementations, the application can be built. It is important to note that this does not harvest the code, nor does it start the application.
When deploying the Prime Radiant Application, some additional steps need to be taken when first deploying for the first time.
If the application works as expected, or whenever expanding after changes were made to the model, it is a good idea to harvest the existing custom code. Provision and expand can both irreversibly remove custom code in the application. Harvested code will be saved with the model itself, and will be inserted in the skeleton when expanding again.