From Java 17, Java has updated security management which requires explicitly declaring access to classes outside their own module (through exports and opens). Constellation for v3 required a number of these additions to the main project properties in Core as well as project properties for any module suites sitting on top of Core order for it to work. This will include the TrainingExercises module suite which is created as the base for the developer guide.
Given the module suite is created from scratch by a developer going through the guide, the required security management declarations should be added to the guide, likely as an added step in Exercise 1.1 (probably at some point before current 1.1.4). It could be added a couple of ways (possibly others):
1) added before current 1.1.3 (run the application), making it clear from the beginning that there will need to be things declared in properties
2) modifying 1.1.3 to demonstrate what happens without the declarations and then steps afterwards declaring them and running again
Without these additions, the application won't run properly.
Steps to Reproduce
Follow the guide as currently set out up until first run
Run the application when first asked to
Open a new graph
Expected behaviour: Can get a point in guide where applications doesn't throw issues. Guide clearly articulates need for explicit security management
Actual behaviour: App never seems to work as guide says it does. No mention of explicit security management
Reproduces how often: 100%
Additional Information
Copying the ones from Core appears to work. i.e. adding the following to project.properties in the TrainingExercises module suite:
Prerequisites
[x] Put an X between the brackets on this line if you have done all of the following:
Running the latest version of Constellation
Attached the Support Package via
Help
>Support Package
Checked the FAQs: https://github.com/constellation-app/constellation/wiki/FAQ
Checked that your issue isn’t already filed: https://github.com/constellation-app/constellation/issues
Checked that there is not already a module that provides the described functionality: https://github.com/constellation-app/constellation/wiki/Catalogue-of-Repositories
Description
From Java 17, Java has updated security management which requires explicitly declaring access to classes outside their own module (through exports and opens). Constellation for v3 required a number of these additions to the main project properties in Core as well as project properties for any module suites sitting on top of Core order for it to work. This will include the TrainingExercises module suite which is created as the base for the developer guide.
Given the module suite is created from scratch by a developer going through the guide, the required security management declarations should be added to the guide, likely as an added step in Exercise 1.1 (probably at some point before current 1.1.4). It could be added a couple of ways (possibly others): 1) added before current 1.1.3 (run the application), making it clear from the beginning that there will need to be things declared in properties 2) modifying 1.1.3 to demonstrate what happens without the declarations and then steps afterwards declaring them and running again
Without these additions, the application won't run properly.
Steps to Reproduce
Expected behaviour: Can get a point in guide where applications doesn't throw issues. Guide clearly articulates need for explicit security management
Actual behaviour: App never seems to work as guide says it does. No mention of explicit security management
Reproduces how often: 100%
Additional Information
Copying the ones from Core appears to work. i.e. adding the following to
project.properties
in the TrainingExercises module suite:If someone figures out a simpler list to include though, then that should probably be what is used.