Release 2019.7

PrimeRadiant 2019.7.0 overhaul.

Download

Nexus Downloads

Full stack:

If you use hibernate, download the following zip and unpack jars inside it to <NSF>/infrastructure/tomee-plume-7.1.1/lib.

nsx-prime docker image: nsx-prime:2019.7.0-460

Alternative downloads:

NOTE Due to the extent of the changes, it is not possible to use the new upgrade and apply to an old jonas-based Prime Radiant.

NS Modeler:

Reporting Issues:

  • Please report any issues here: https://bitbucket.org/normalizedsystems/nsx-tools-issues/issues?status=new&status=open

If you don’t have access, let me know on slack (Peter Uhnak).

Installation

Unpacking

Download all-in-one zip and unpack it to C:\NSF. Using C:\NSF-3.0 is no longer required.

If you want to change the installation directory, or port number, see dedicated sections below.

Copy your workspace directory if necessary. We recommend removing the descriptors directory, if you choose to do so.

Database Migration

Prime Radiant is now packaged with a cleaned-up database which we recommend to use.

If you have data in your existing Prime Radiant that you want to move, we recommend you export such data to XMLs and import them to the new Prime Radiant. We have some tooling with which we can assist you in the migration.

Known Issues

There are some known issues in this release, however they do not affect functionality, but may be confusing.

  1. When using Prime Radiant, in console you may see warnings regarding DESCRIPTION field type mismatch, you can safely ignore those.
  2. Stopping deployed application will leave the console red (as if error occured), even though it stopped the application successfully.

First Run

Run C:\NSF\start_prime_radiant.bat and wait for Prime Radiant to start.

NOTE First start of Prime Radiant may take an extra minute to start up. Consider excluding your <NSF> directory from Windows Defender to improve overall performance, including expansion and builds.

Visit http://localhost:9000/primeRadiant/ and log in.

Release Notes

(notes are still being updated)

Infrastructure Changes

Main changes:

  • added TomEE Plume 7.1.1
  • JOnAS 5.1.4 replaced by 5.2.4
  • Maven updated from 3.0.5 to 3.6.1
  • added jdk1.8 (openjdk 1.8.0_181)
  • jdk1.6.0_22 replaced by jdk1.7.0_51

Prime Radiant itself has been migrated to Java8/TomEE/OpenJPA stack as well.

You can now deploy from Prime Radiant to both TomEE and JOnAS.

Similarly to HSQL, Prime Radiant will now generate default settings for Postgres. TODO sequence id expander option

JOnAS Deprecation

JOnAS usage is now deprecated, and we strongly suggest to move to TomEE.

If you need to use version 5.1.4, you will need to copy all necessary libraries (Java 6, Maven 3.0.5) and settings from previous version.

Updating of Source Bases and Deploy Bases

You no longer need to manually create Source Bases and Deploy Bases when importing applications.

Visit [Software Configs NsfBase](http://localhost:9000/primeRadiant/elements/nsfBase/all), select NSF 3.0 and click on Update Source Bases and Update Deploy Bases.

These actions will analyze your <NSF>/workspace (SourceBase) and <NSF>/infrastructure (DeployBase) and automatically create the necessary elements.

Custom Nsf Bases

Experimentally, you can create your own Nsf Bases outside the standard <NSF> location.

Settings Changes

Global Option Settings, Technical Infrastructure, Presentation Settings, and Business Logic Settings were cleaned up and may not match your application settings.

Please review the currently available settings at [Software Configs Settings](http://localhost:9000/primeRadiant/elements/settings/all) and adopt your applications accordingly.

WARNING You will have to fix all applicationInstances of an application before you can use it to expand, harvest etc. Otherwise, the PR will fail to export the application which is needed to expand.

If you need to use your custom settings, copy them to <NSF>/repositories/settings and use the Import From Repositories action on the Settings page.

Migration table for Settings types:

Type Removed Name Replacement Name
Global Option Settings 3.0 Default
3.0 Future
3.0 Modern
Presentation Settings 3.0 Default 3.1 Transitional1
3.0 BelastingDienst2
Business Logic Settings Standard Postgres TomEE Postgres Hibernate
JOnAS Postgres
Business Logic Settings Standard HSQL TomEE HSQL OpenJPA
JOnAS HSQL
Technical Infrastructure 3.0 Default3 Java 8 (for TomEE)
Java 7 JOnAS 5.2.4 (for JOnAS)
Technical Infrastructure 3.0 Java 7 Java 7 JOnAS 5.2.4
Technical Infrastructure 3.2 Java 8 Java 8

1 3.1 Modern is preferred, however 3.1 Transitional is backwards compatible with 3.0 Default. 2 For BelastingDienst only. 3 If you need to use JOnAS 5.1.4, import your own settings.

Application Instances and Deploy Bases

Deploy Base is no longer specified at the level of Application Instance (setting it will have no effect). Instead you need to configure it for Application Deployment in the Deployment tab.

Expansion and Deployment UI

Actions in [Software Constructs ApplicationInstance](http://localhost:9000/primeRadiant/elements/applicationInstance/all) Expansion and Deployment tabs have received overhaul:
  • Provision | Clean is now Expand | Clean Expand
  • Provision | Menu is now Generate Menu Harvest
  • Provision | Config is now Generate Deployment Configuration in the Deployment tab
  • Standard overlay (copying files with matching structure) is now automatically performed by expanders
    • To skip the overlay (and see the original files) use Expand | Skip Overlays
  • Intruduced Build (mvn package) and Build | Clean (mvn clean package)

Code Import

The code import has been reimplemented in a way that better fits the growing number of expanders.

To run the code import, navigate to Dashboard | Code Analysis. This will take you to the Expansion page.

First, use the Expansion Resources link to go to the ExpansionResource page. This page shows all imported expander versions along with any external expander bundles.

Pressing the import Expansion Resources button will import all expander-bundle jars that can be found in <NSF>/repositories/nsx/expanders/. Once it’s done you should see different expanders versions.

Once the expansionResources have been imported, you can go back to Expansion page to import the application with it’s custom code.

Select an applicationInstance and press Import Code. This will run an expansion which generates a zip with meta-data, which is then imported into the Prime Radiant. The result will be a list of all the artifacts and their custom code.

Note: make sure the applicationInstance uses at least expanders version 4.0.5.1. Otherwise the import will fail.

Field UI Changes

Field types now show the target ValueFieldType or DataElement element and can be clicked on.

Custom NSF Location

If you want to use location other than the default C:\NSF:

  1. make sure your Prime Radiant is not running
  2. move your NSF to your desired location, e.g. D:\NSF-7.0
  3. manually update paths in <NewNSF>/nsx/prime/nsfInstallation.xml
  4. start Prime Radiant
  5. open [Software Configs Prime Base](http://localhost:9000/primeRadiant/elements/primeBase/all)
  6. Select PR 3.0 and execute Update Prime Radiant Location action

Custom Port Number of Prime Radiant

If you prefer to run PrimeRadiant on different port, e.g. 9090, you can change the configuration files in <NSF>/infrastructure/tomee-plume-7.1.1/PR-BASE/conf in server.xml and all files in jndi subdirectory.

OR with (git-)bash

cd /c/NSF/infrastructure/tomee-plume-7.1.1/PR-BASE/conf
sed -i 's/9000/9090/' server.xml
cd jndi
sed -i 's/9000/9090/' *.props

If you want to run both Prime Radiant’s at the same time, you can use 127.0.0.1 instead of localhost as the host (e.g. http://localhost:9000/primeRadiant/ and http://127.0.0.1:9090/primeRadiant/). Otherwise they will share cookies and they be signing you out from each other’s sessions.

Versions

Library Version
baseComponents 2019.7.0
elements 2019.7.1
elements-io 2019.1.1
elements-ioxml 2019.7.1
expanders 4.0.5.1
nsx-libraries 2019.5.1
nsx-prime 2019.7.1
nsx-runtime 2019.5.1
primeRadiant 2019.7.1
webStyles 2019.7.0

Changelog

See Expanders Changelog