The following settings apply to JMap Web applications.
This type of application requires a layer configuration that may differ from the configuration existing in the project to be disseminated. JMap Web displays map images that are generated by JMap Server from the project layers. An image will often contain the data of several layers combined together.
The images produced can either be tiled (images with fixed sizes) or not tiled (images with variable sizes). In the case of tiled images, they can be generated in advance or on demand, and they can be cached to improve performance. Images that are not tiled are always generated on demand. In general, tiled image layers offer better performances and a smoother user experience, but they may add border effects and overload the server if there are a lot of them.
Base layers are used to display a map in the background. The data of base layers is static and cannot be queried by JMap. Only one base layer can be displayed at a time in the application, but if several are available, the user can select one.
Base layers can be made up of layers from the JMap project or they may come from external sources (OpenStreetMap, Google Maps, Bing Maps, WMTS, Mapbox). When they are produced by JMap Server, tiled, and cached, they can be shared by several JMap Web applications.
The following settings apply when creating a JMap layer (static or dynamic) for JMap Web.
The geographic properties of JMap Web allow you to redefine certain project properties for this application. This type of application can generate a significant workload on JMap Server and a large storage space if you use a GeoWebCache server. By reducing the global extent of the map and maximum scale, you can help reduce the load and improve performance. By default, JMap Web will use the same properties as those defined in the project.
The following parameters apply to JMap Web applications.
JMap Web applications use an approach based on the production of map images generated by JMap Server. The images can be produced as a series of tiles that are adjacent to one another, for each scale level. Lower scale levels contain a small number of tiles (small scale, few details on a large portion of territory), while higher scale levels typically contain a large amount of tiles (large scale, many details on a large portion of territory).
These images are created on request when users navigate on the map in web applications. Producing these images demands a lot of work from JMap Server and therefore can cause significant delays in these applications. To improve performance, it is recommended to use a tile cache system. This system caches each tile once it is produced and can also ask JMap Server to produce all images of each layer in advance. This operation can require several hours of work during which JMap Server will be very busy. In addition, the sum total of the cached tiles can require considerable storage space. Afterwards, this will greatly accelerate navigation in web applications, since all images will have been produced and made available.
JMap Server is compatible with the open source product GeoWebCache (). However, to improve integration with JMap Admin, K2 Geospatial provides its own slightly adapted version of GeoWebCache. Visit the K2 Client Portal to download the GeoWebCache installer for JMap Server.
To use GeoWebCache in conjunction with JMap Server, JMap Admin must be configured to provide JMap with the settings to connect to GeoWebCache. These settings are entered in the section JMap Server / Settings.
The URL to GeoWebCache indicates the JMap Server address that communicates with GeoWebCache. Providing more than one URL towards GeoWebCache enables web and mobile applications to launch more image queries simultaneously, which improves performance when loading the map. These URLs must use domain names or IP addresses that point to the same GeoWebCache instance (e.g. cache1.jmaponline.net, cache2.jmaponline.net).
The username and password configured allow JMap Server to connect to GeoWebCache and send it commands. For instance, JMap Server can ask GeoWebCache to create, delete or update tile caches. These settings must match the configuration in GeoWebCache. Read below for more information on configuring GeoWebCache.
In the information section of a web or mobile application that has already been deployed, there is a subsection titled Cached layers. This subsection displays the list of layers for which the Cached option was activated. This section allows you to manage caching and access the GeoWebCache management console.
For each layer, click on Seed to launch the production of the tile cache. This process can be cancelled by clicking on Cancel. To delete the cache for a layer, click on Delete. Cache production can take a very long time. If you wish to manage the cache directly in the Geowebcache interfaces, click on Manage in Geowebcache.
To add a layer, click on .
See the section for more information on configuring these settings.
GeoWebCache is not included with JMap and must be installed separately. For more information on installing and configuring GeoWebCache, read the following .
If GeoWebCache is correctly installed and configured, you can use it with JMap Web applications. Usage of GeoWebCache for this type of applications is configured when these are deployed. It is when you configure layers that you can select the Cached option. See .
Application options
Project
Select the project to open when JMap Web is started.
Language
Select the language to be used in JMap Web.The elements of the graphical interface (menus, buttons, text in windows, etc.) will be in the selected language.
If you select the Automatic option, the language of the graphical interface will be the same as the language defined in the regional options of the user’s system. If the aforementioned language is not supported by JMap, the language will be set to English.The project configuration (names of layers, mouseover bubbles, etc.) will be in the selected language, provided translations into this language are available in the project.
If you select the Automatic option, the language of the project will be the same as the language defined in the regional options of the user’s system. If the user’s system language is not available in the project, the default language defined in the project will be used.
Map rotation
You can define the rotation to be applied to the map when opening the application.
Controlled access
This option determines if access to this application must be controlled. If this option is activated, an authentication window will display at application startup. If this option is not selected, the project must allow anonymous sessions.
Docked layers panel at startup
Determines if the sidebar (containing the list of layers and searches) will be displayed when the application opens.
Continuous zoom
This option allows you to zoom continuously on the map. If this option is not selected, the zooms are made in predetermined increments. This option is automatically disabled if Google Maps is displayed as a base map. This option is selected by default for new web deployments from JMap Server Cairo.
Geolocation tool
Select this option to activate the geolocation tool in the application. The option will only be available if the application is deployed with the HTTPS protocol. If this option is not selected, the geolocation button will be absent from the user interface.
Data editing tools
Select this option to activate the data editing tools for element geometries and their attributes. Even if these tools are activated, the user must have the necessary permissions to modify the data of a layer.
Selection tools
Select this option to activate the selection tools in the application. If this option is not selected, the selection button will be absent from the user interface.
Google tools
Select this option to activate the address search, directions, and Street View from Google. Important: You must make sure you use this option in accordance with Google’s license agreement.
Sharing tools
Select this option to enable sharing tools (link to this map, integrated map, create an image). If this option is disabled, the sharing menu will not appear in the user interface.
Share on social networks
If the sharing tools option is selected, you can select this option to enable map sharing on social networks (Facebook, Linkedin, Twitter).
GeoWebCache
Username
If you are using a GeoWebCache server, enter the user account that GeoWebCache must use to access the deployed application and selected project. It is absolutely necessary that this user account have the appropriate permissions to open the project associated with this deployed application. Refer to the Using a GeoWebCache Server section for more information.
Password
Enter the password that GeoWebCache must use to access the deployed application and associated project.
Advanced
Cross-Origin Request Sharing
Select this option if JMap Web needs to be embedded in a website whose domaine name (DNS) is different from that of the application.
X-Frame Options
This field offers a range of options for the JMap Web application to be called from an iframe.
X-Frame Authorized Referers
In this field, add any domain URL authorized to call the JMap Web application in an iframe. URLs must be separated by semicolons.
Example: http://172.17.101.14:8082; http://172.17.101.15:8083.
Session timeout
Check this option to log the user out after a given period of inactivity.
REST API Address
JMap Web requires JMap Server’s REST services. Enter a different address for the REST services if they were deployed on another server.
Properties
Layer name
Name that identifies the layer. This name will be presented to the user in the application’s layer manager. The name must be unique.
Image format
Select the format used to produce the layer images. For layers with air or satellite photos, the jpeg format usually offers the best compression rates. However, this format does not allow you to adjust the transparency of the layer, which is opaque.
Base layer
Determines whether or not the layer will be a base layer.
Visible
Determines if the layer will be initially visible or invisible when the application opens. This option does not apply to base layers.
Listed
Determines if the layer will be displayed in the layer list presented to the users. A layer may be displayed on the map without being displayed in the list of layers.
Tiled
Determines whether or not the layer images will be tiled. Static layers are automatically tiled.
Cached
Select this option if you want GeoWebCache to be used to cache the tiles generated for this layer. This option is available only for static layers. Refer to the Using a GeoWebCache Server section for more information.
Layer composition
Available layers
List of project layers available to include in the new layer.
Selected layers
List of layers selected to be included in the new layer. You can define the display order of the project layers that make up the new layer. All selected layers will be drawn together in the images produced by JMap Server.
Map thumbnail
Choose
When the layer is a Base Map, you can select an image to represent it as a thumbnail in the application. The image to be uploaded must have a size of 100x100 pixels, otherwise it will be modified to reach this size. If you do not select an image, the thumbnail will display a default image.
1
Use these tools to redefine the initial and maximum extents, as needed. By default, the project’s extent values are used. Limiting the maximum extent of the map can greatly reduce the size of the cached data for this type of application. The maximum extent is represented by the solid line. The initial extent is represented by the dotted line.
2
Zoom to… The Zoom to… function allows you to find data on the map. In some cases, the extents known by JMap can be incorrect, and the map displayed by default can seem empty. In order to help you locate the data correctly, this tool allows you to zoom in on the extent of a specific layer or on the extent of the entire project. Once the data has been located, you can reset valid initial and maximum extents.
3
Maximum scale This setting allows you to redefine the maximum scale of the map to limit the user’s ability to enlarge the map. By default, the maximum scale defined in the project configuration is used but another scale can be specified. Specifying a smaller maximum scale allows you to considerably reduce the size of cached data for this type of application.
4
Level/Scale Displays the list of zoom levels and scales that will be used by the application. The levels are determined by the maximum scale and maximum extent. Allow additional levels This option allows JMap Web, in certain situations, to display the map at larger scales (closer zoom) than those normally used. The largest scale normally used is approximately 1:1000. If the maximum scale defined previously is larger than 1:1000 (e.g. 1:500), you must select this option to allow JMap to zoom closer. Most base maps (Google Maps, Bing Maps, OpenStreetMap, Mapbox) cannot display well at scales larger than 1:1000.
5
Maximum extent The maximum extent settings are displayed below the map (X, Y coordinates of lower left point, width, height, in the coordinate system of the project). You can also enter the values directly in the respective fields.
Types of layers
JMap dynamic layer
JMap dynamic layer (entire project)
JMap static layer
Google Maps
Add a base layer that displays the Google Map. In order for this layer to display correctly with the other layers, the projection of the JMap project must be identical to the projection used by Google Maps, i.e. WGS84 / Pseudo-Mercator (EPSG:3857). You can choose the types of maps (Roadmap, Terrain, Satellite, Hybrid, etc.) that you wish to add. Important: In order for this layer to appear, you must enter a Google Maps API key in your configuration. In the layer configuration interface, the existing key is displayed, but you cannot edit it in the interface. Refer to the JMap Server Settings section for information on how to enter or edit a Google Maps API key. You must make sure you use this option in accordance with Google’s license agreement.
Bing Maps
Add a base layer that will display the Bing Map. In order for this layer to display correctly with the other layers, the projection of the JMap project must be identical to the projection used by Bing Maps, i.e WGS84 / Pseudo-Mercator (EPSG:3857). You can choose the types of maps (Road, Aerial, Aerial With Labels, etc.) that you wish to add. Important: In order for this layer to appear, you must enter a Bing Maps API key in your configuration. In the layer configuration interface, the existing key is displayed, but you cannot edit it in the interface. Refer to the JMap Server Settings section for information on how to enter or edit a Bing Maps API key.You must make sure you use this option in accordance with Microsoft’s license agreement.
OpenStreetMap
Add a base layer that will display the OpenStreetMap map. In order for this layer to display correctly with the other layers, the projection of the JMap project must be identical to the projection used by OpenStreetMap, i.e. WGS84 / Pseudo-Mercator (EPSG:3857). Important: You must make sure you use this option in accordance with OpenStreetMap’s license agreement.
Mapbox
Add a base layer that will display the Mapbox map. In order for this layer to display correctly with the other layers, the projection of the JMap project must be identical to the projection used by Mapbox, i.e. WGS84 / Pseudo-Mercator (EPSG:3857). Important: You must make sure you use this option in accordance with Mapbox’s license agreement.
GeoWebCache
Create a static JMap layer by reusing an existing tile cache that is available in GeoWebCache. For more information, refer to the Using a GeoWebCache Server section.
WMTS layer
Add a layer from a server that is compatible with WMTS (version 1.0.0). You must give the layer a name, indicate if you want the layer to be visible when the application opens, and also indicate if you want it to be listed in the Layers menu.
You can use one of the project’s existing layers or directly connect to an external source to obtain the data.
If using the latter option, you must provide the GetCapabilities URL that will return the capabilities of the WMTS server.
The URL should be similar to the following: http://www.server.com/wmts?SERVICE=WMTS&VERSION=1.0.0&REQUEST=GetCapabilities For example: https://basemap.nationalmap.gov/arcgis/rest/services/USGSHydroCached/MapServer/WMTS/1.0.0/WMTSCapabilities.xml Afterwards, you must select the layer to add to the JMap Web application. Only layers who have the same projection as the project are selectable.
Dynamic layers can be tiled or not tiled, but they are always generated on demand and they cannot be cached. They are a good option for data that changes often or that requires more interactivity. The user can control the visibility of each layer composing the dynamic layer. Users can also display thematics and their legends, edit data, make selections, etc. A dynamic layer offers a high level of interactivity with the layers it is comprised of.
Dynamic layers for the entire project are a special type of dynamic layer that presents the layers of the project with their organization (hierarchy of groups and layers). They are a quick way to deploy an application that accurately represents a JMap project. However, since they are always dynamic and can be comprised of many layers, their performance isn’t optimal when there are many users. A dynamic layer for the entire project shows the layer structure as it is defined in the project. It offers a high level of interactivity with all of the layers.
Static layers are always tiled and often cached. They are a good option for data that does not change often. They can be base layers or non-base layers. They are less interactive than dynamic layers. Users can see a static layer’s composition (unless it is a base layer) but they will not be able to control the visibility of each one, nor can they request the display of thematics or edit data. However, it is possible to display mouseover bubbles and make selections on the layers that make up a static layer. JMap static layers can be used as base layers.