The niord repository contains the common code-base for the NW + NM T&P editing and publishing system.
To get started with developing Niord you need to check out the developer guide at http://docs.niord.org/dev-guide/guide.html.
Country-specific implementations of the Niord system are easily created using a web-application overlay project. Here additional code can be added and web resources (images, stylesheets, javascript files, etc) can be replaced with custom versions.
For an example, please refer to niord-dk - a Danish implementation of Niord.
A swagger definition of the public portion of the Rest API is published at https://niord.dma.dk/swagger/swagger-ui.html/.
The swagger definition is generated from the jersey annotated methods in ApiRestService.java and S124RestService.java.
Sensitive or environment-specific settings should be placed in a "${niord.home}/niord.json" file. Example:
[
{
"key" : "baseUri",
"description" : "The base application server URI",
"value" : "https://niord.mydomain.com",
"web" : false,
"editable" : true
},
{
"key" : "wmsLogin",
"description" : "The WMS login",
"value" : "YOUR-SECRET-WMS-LOGIN",
"web" : false,
"editable" : true
},
{
"key" : "wmsPassword",
"description" : "The WMS password",
"value" : "YOUR-SECRET-WMS-PASSWORD",
"type" : "Password",
"web" : false,
"editable" : true
}
]
IntelliJ set-up:
Notice the following describes the setup for a previous version of Niord.
- First, check out and open the parent niord project in IntelliJ.
- In Run -> Edit configuration..., configure a new local JBoss server based on the niord-appsrv project.
- Deploy "niord-web:war exploded" to the server.
- If working on a country-specific Niord implementation, e.g. niord-dk, import this maven project via the "Maven Projects" tab. Deploy the imported project to Wildfly instead of "niord-web".
- If you have only updated web resources, there is no need to re-deploy the web application. Use the "Update resources" function instead.
- To get rid of superfluous IntelliJ code editor warnings, disable the "Declaration access can be weaker" and "Dangling Javadoc comment" inspections.