JMap application users can generate certain data that will be stored in the JMap Server environment.
This can include various types of data, including user preferences (choice of units, print settings, etc.), map contexts (JMap Pro, JMap Web and JMap NG) and customized print layouts.
Map context data is stored in JSON format in the JMAP_CONTEXTS table of the System database.
Non-context data is stored in separate folders for each user. The parent folder of these user folders is
JMAP_HOME\workspaces<username>
Note that this folder can have a different location if you indicate a different folder in the server.workspaces.path line of the jmapserver.properties file and manually copy the files and subfolders.
In some cases, the administrator may have to copy certain files when a migration occurs or when these files need to be shared with other users. The following sections describe each of these situations in detail.
The functions to export and import JMap Server configurations also handle user data.
Map contexts are comprised of all the parameters that allow a JMap Pro, JMap Web or JMap NG user to recreate a geographic map. Contexts can be used to save maps and even share them between users. Existing contexts can be recalled easily to recreate a map environment. All layer parameters, annotations, thematics, selections, etc. are part of the context and are recreated when the context is opened.
A context is associated with the project in which it was created. It cannot be accessed in other projects.
The Personal Layers section provides more information on managing personal layers and how to make them public. The data from personal layers is not stored in the workspaces folder; instead, it is saved directly in JMap Server’s System database (one table per personal layer).
Export and import tools can handle the data of personal layers.
As with personal layers, the data from editable layers of JMap projects is stored directly in JMap Server’s System database, in tables that are called JMap Spatial tables.
Export and import tools can handle the data from JMap Spatial tables.
The users of JMap Pro applications can create their own print layouts. The files are stored in the folder
JMAP_HOME\workspaces<username>\printLayouts
The print layouts created by users can be made public. To do this, you must copy the files in the following directory:
JMAP_HOME\workspaces\public\printLayouts.
Public print layouts can be accessed by all JMap Pro users.
This section contains tools that allow you to import and export JMap Server configuration, user data as well as make backup copies of JMap Server.
Your JMap Server configuration (spatial data sources, databases, projects, layers, etc.) is stored on a disk in binary format. This configuration is only accessible by JMap Server and is only compatible with your current version (main version, e.g. Lima).
Using the export tool, a text version of this configuration can be produced. This exported configuration can then be imported back into JMap Server, with the same settings or different ones. The configuration can even be exported to a newer version.
Here are a few examples where exporting and importing your configuration can be useful:
You installed a new version of JMap with major changes and you want to reuse your existing configuration. You can export the configuration from your older JMap version and then import it in the newer version.
You manage many instances of JMap Server and you need to move a project from one instance to another. You can do a partial export to move only the project you need and then import it in the other instance.
You need to replicate your development environment to the production environment. You can do a full export from your development server and then import it in the production server.
To access export and import tools, select Import / Export in the Tools section.
When exporting a configuration, you must choose whether you want to export the complete configuration or some specific resources (partial exportation).
If you choose to export specific resources, you must select if you want to export databases, spatial data sources, projects, style templates or metadata templates.
There is a dependency relationship between these different resources: projects depend on spatial data sources and style templates while spatial data sources may depend on databases. Consequently, if you export a project, then spatial data sources, style templates, and possibly databases will also be exported.
If one of the projects contains referenced layers from another project, you must export the project that contains the original layers at the same time as the project that contains the referenced layers.
The exportation process creates up to 4 files: the .properties file is the main exportation file and contains the configuration information. All files are necessary for the importation. You can determine the destination directory and file name.
When importing a configuration, you have the choice to import a complete configuration (complete importation) or only a portion of it (partial importation). You can only do a complete importation if the exportation files contain a complete exportation.
When doing a complete importation, any existing configuration in JMap Server is deleted and replaced by the imported configuration.
When a full importation is completed, you will automatically be sent back to the JMap Admin login page.
When doing a partial importation, there may be situations where the imported resources already exist (identical names). In these cases, you have to tell JMap Admin which action to take: replace the existing resource or create a new one with a different name. The file type data sources that you import are not ready to use and must be updated after the importation.
If one of the projects contains referenced layers from another project, you must import the project that contains the original layers at the same time as the project that contains the referenced layers.
JMap user data includes all data created or modified by users. This includes user preferences, contexts, personal layers, data from editable JMap layers, etc. The User Data section provides details on this topic.
If you change JMap Server instances and you wish to keep all existing user data, you must export it from the previous server and import it into the new server.
The configuration file for the export and import of user data is a .properties file.
For a successful export / import, validate that this file contains the following line:
project.id.ID_OF_THE_PROJECT_BEFORE_EXPORT=ID_OF_THE_PROJECT_AFTER_EXPORT_SERVER_CONFIGURATION.
When you export user data, you must decide whether to export all data, only the editable layers stored in JMap (including personal layers) or only the workspaces (including contexts, user preferences, etc.).
When you import user data, there may be situations where imported resources already existed (identical names). In these cases, you must indicate which action JMap Admin must take: replace the existing resource or create a new one under a different name.
During exports and imports of JMap configurations the project IDs change and this has a considerable impact on user data such as contexts which are associated with a particular project.
To resolve the problem you can create a .mapping file that maps the old and new IDs of each project. The following text details the procedure to follow.
From the old JMap Server:
Export the JMap Server configuration.
Export user data configuration.
On the new JMap Server:
Import the JMap Server configuration.
Take note of the ID of each project on the old server.
Take note of the ID of each project on the new server.
Create one (1) .mapping file with the mapping for each project between the old and new IDs.
Import the user data configuration by specifying the .mapping file created in the previous step.
It is strongly recommended to make backups of the JMap Server setup.
If the JMap Server System database was moved to another RDBMS, it must be included in the backup strategy. It contains very sensitive information like personal layers data.
The simpler backup strategy is to make copies of the JMap directory and all sub-directories.
If you wish to make smaller backups, you can make copies of the specific directories listed below, which contain important information.
conf
Contains all parameter files such as jmapserver.properties, usermanager.properties, etc.
db
Contains configuration files (projects, layers, etc.) as well as the JMap Server System database, unless it was moved to another RDBMS.
backups
Default directory for storing export files.
workspaces
User workspaces contain the users’ personal parameters and contexts.