Sites

A site is a technology-neutral configuration of a GIS application. A site's configuration can include any of the features and functions offered by Essentials, such as workflows, data links, and print templates. You can also extend Essentials with custom functionality.

The map is central to a site. The map can combine layers from different map services, including ArcGIS Server, Bing Maps, WMS, and others. Map services can be dynamic or cached, or you can combine the two. The map can also include ArcGIS web maps, feature services, and image services.

This ability to mix and match layers from different services enables you to tailor a site to precisely what is needed for a particular application. An organization that delivers multiple applications usually has multiple sites, often one for each application.

Layer Catalog Sites

A layer catalog site is a pared-down version of an Essentials site that is used to organize large repositories of layers and map services. Typically, you include the most popular, important, or universal base layers and services in your main site, and you use a layer catalog site for layers that not everyone needs. You then reference the layer catalog site from the main site. This allows users to access the layer catalog in the viewer. When end users require additional layers, they browse the catalog and add the layers that they need.

If you publish a map service containing duplicate layer names for use in a layer catalog site, those duplicate layer names are not supported in the Viewer. Modify the map service to ensure that all layer names are unique. For example, if a map service contains the following layers, the two layers named Point1 are not supported.

Similarly, duplicate layer names Point1 contained in separate group layers are not supported:

Note that with a layer catalog, you cannot reference the same map service that is already present in the base site. Also, layer catalog layers do not support attachments, data links, instant search, and relationships.

Layer catalog sites support the following types of layers:

Layer catalog sites support tiled map services. However, you must have a tiled map service enabled on the base site before you can reference tiled map services from the layer catalog site. If you do not have a tiled map service added to the base site, then levels of detail are not supplied to the map. As a result, tiled map services from the layer catalog site cannot be used. In most cases, basemaps are tiled map services and will suffice.

For instructions on configuring a layer catalog site, see Configure a Layer Catalog Site. See LayerCatalog Module for viewer configuration information.

Do not add a site reference to a site that contains multiple layer catalogs, as this may lead to unexpected behavior. Use a single layer catalog instead.

Site Configuration

Site configuration is the process of specifying the components that make up a site, and their behavior and availability. Geocortex Essentials stores a site's configuration in an XML file called Site.xml. Each site has its own Site.xml file.

Site configuration files are kept in subfolders of the Geocortex Essentials Sites folder. For example, an Geocortex Essentials installation with three sites might have the following folder structure (other Geocortex Essentials files are not shown):

Example of a Sites folder

The Site List

The Site List is Manager's list of your configured sites. To show the Site List, click the leftmost tab in Manager's banner area. The tab says Site: [Site Name] when a site is open for editing, or Sites otherwise. If a site is open for editing, save and close the site to show the Site List.

The Site List has two views: Tiled View and List View. You can switch between the two views by clicking the  List View or  Tiled View button.

Tiled View

By default, the Site List displays in Tiled View. Tiled View shows a thumbnail image of each site's map.

The Site List in Tiled View, showing five sites

In some cases, instead of an image of the map, you may see:

This means that Manager has not yet created the thumbnail image, or cannot create the image for some reason.

 This means that the site does not have a map (no map services have been added to the site).

This means that the site is a Layer Catalog Sites.

 

To show tools to manage a site, hover over the site's thumbnail image.

Site management tools in Tiled View

To edit the site:

  • Click the map image, or
  • Click the site's name, or
  • Click the Edit tool .

To show the Site Summary:

  • Click the down arrow .

    The Site Summary includes hyperlinks to launch the site's viewers.

List View

List View is more compact than Tiled View, so it is useful if you have a large number of sites. It is also useful if the maps for many of your sites look similar.

The Site List in List View, showing five sites

To show the Site Summary for a site, click the plus sign  beside the site.

Actions and Site Summary for a site called World

Create a Site

There are two ways to create a new site in Manager:

If you have more than one instance of Essentials installed, we recommend you name your sites with unique IDs across all instances of Essentials. Otherwise, unexpected behavior may occur, such as displaying saved projects and collaboration rooms from other Essentials instances. Despite this, users can still only access the content to which they have permission.

You can also create a site by copying an existing Site.xml file and saving the copy to a new subfolder in the Sites folder. Manager will detect the new site and include it in the Site List the next time the Site List loads.

Create a Site Using the Wizard

The Create Site wizard enables you to:

Create an Empty Site

To create an empty site:

  1. In Manager, click the Sites tab.If another site is open for editing, click Save Site and then Close Site to return to the Sites list.

  2. Click Add New Site.

  3. Type a display name and optional description for your site.

    The site's display name should be reasonably short. The site's initial name also generates the site ID and the Windows folder name. Windows file paths must be less than 260 characters.

  4. Click Next.

  5. Select Create an empty site, and then click Next.

  6. Click Finish.

    Manager creates the site and opens it for editing.

Create a Site that References a Web Map

To create a site that references a web map:

  1. In Manager, click the Sites tab.If another site is open for editing, click Save Site and then Close Site to return to the Sites list.

  2. Click Add New Site.

  3. Type a display name and optional description for your site.

    Essentials creates the site's ID from the display name. You can change the display name later, but you cannot change the ID.

  4. Click Next.

  5. Select Reference a web map from ArcGIS Online or Portal for ArcGIS, and then click Next.

  6. Do one of the following:

  7. Enter the URL

    1. Type or paste the web map's URL into the box, and then click Next.

    Search for the Web Map

    1. To limit the search to web maps that belong to your ArcGIS organization, select the Organization content only checkbox.

      If you clear the checkbox, the search includes your organization's content and public content from outside your organization.

    2. If Essentials is registered with ArcGIS Online and you have added a Portal for ArcGIS service connection, select the portal that you want to search—search Portal for ArcGIS (based on the service connection) or search ArcGIS Online (based on the ability to search that comes with registration).

    3. Type the term that you want to search for.

      Search results display while you are typing. The more information that you type, the smaller the list of search results. You can stop typing at any time and browse the results.

      In the search results, a padlock beside a web map means that the web map is private.

    4. In the search results, select the web map that you want to add.

    5. Click Next.

    6. If you selected a private web map, enter your user name and password, and then click Next.

  8. Click Finish.

    Manager creates the site and opens it for editing.

Create a Site that References Another Site

To create a site that references another site:

  1. In Manager, click the Sites tab.If another site is open for editing, click Save Site and then Close Site to return to the Sites list.

  2. Click Add New Site.

  3. Type a display name and optional description for your site.

    Essentials creates the site's ID from the display name. You can change the display name later, but you cannot change the ID.

  4. Click Next.

  5. Select Reference another site, and then click Next.

  6. Select the site you want to reference, and then click Next.

  7. Click Finish.

    Manager creates the site and opens it for editing.

Create a Site with a Layer Catalog

To create a site with a layer catalog:

  1. In Manager, click the Sites tab.

    If another site is open for editing, click Save Site and then Close Site to return to the Sites list.

  2. Click Add New Site.

  3. Type a display name and optional description for your site.

    Essentials creates the site's ID from the display name. You can change the display name later, but you cannot change the ID.

  4. Click Next.

  5. Select Create a layer catalog site, and then click Next.

  6. Click Finish.

    Manager creates the site and opens it for editing.

Create a Site by Copying an Existing Site

To create a site by copying an existing site:

  1. In Manager, click the Sites tab.If another site is open for editing, click Save Site and then Close Site to return to the Sites list.

  2. In the Site List, show the tools for the site that you want to copy.

    To show the tools in Tiled View, hover over the thumbnail image of the site that you want to copy. In List View, click the plus sign beside the site.

  3. Click the Copy Site tool .

  4. Type a display name for your new site.

    The site's display name should be reasonably short. The site's initial name also generates the site ID and the Windows folder name. Windows file paths must be less than 260 characters.

  5. Click OK.

    The dialog box closes and your new site appears in the Site List. You can now edit the site and make whatever modifications you want.

Edit a Site

Do not edit a site in more than one location at one time or you will lose some of your changes. For example, do not edit a site in two different browsers or browser tabs at one time. Similarly, do not edit a site's configuration file manually at the same time that you edit the site in Manager—always close one before you open the other.

Do not edit a site while modifying its underlying map services with, for example, ArcGIS software, as this may lead to unexpected results. For more information, see Map Service Changes.

You can only edit one site at a time.

To edit a site:

  1. Launch Geocortex Essentials Manager.

  2. Click the Sites tab.

  3. If a different site is open for editing, click Save Site, and then click Close Site.

  4. Follow the instructions for the view of the Site List that you are using:

    • Tiled View:

      • Click the thumbnail image of the site that you want to edit, or

      • Click the site's name, or

      • Position the pointer over the thumbnail image of the site that you want to edit, and then click the Edit icon .

    • List View:

      • Click the site's name, or

      • Click the Edit icon .

      If there is a problem with a map service in the site, you are asked whether you want to remove the service from the site. To proceed with editing the site, you must remove the map service. If you do not agree to remove the map service, the site closes. Note that removing the service can leave empty folders in the Layer List.

 

To test this link, you have to test it in the output. Flare reports and Analyzer think it's broken, but that's because it links into a snippet and Flare and Analyzer aren't smart enough to figure that out.

Edit Site Information

The Site Information page allows you to:

To open the Site Information Page:

  1. In Manager, edit the site that you want to configure, and then click Site Info in the side panel.

Configure a Layer Catalog Site

Main Steps to Configure a Layer Catalog Site

The main steps to configure and use a layer catalog site are:

  1. Create a layer catalog site.

  2. Configure the layer catalog site.

  3. Reference the layer catalog site from another site.

  4. Configure the layer catalog's user interface in the viewer configuration.

Configure Additional Settings for a Layer Catalog Site

Once you have created a layer catalog site, you can configure it in Manager like you would any other site. Layer catalog sites have the following four sections in Manager that you can configure:

Reference a Layer Catalog Site

You can reference a layer catalog site from another Essentials site. From your Essentials Sites list, open the site you want to set up a reference for and select the Site Info page from the main menu.

Locate the Layer Catalogs section of the page and select the Add Layer Catalog button. Choose an existing layer catalog site from the drop-down menu in the dialog and select OK.

In order to load the site that references the layer catalog site, it must contain a basemap.

Reference Other Sites

References enable you to include other sites and ArcGIS web maps in a site. When a site references another Essentials site, the site inherits the other site's configuration—the site's map services are added to the Map Services and Layer List tabs on Manager's Map page. This can affect the Layer List and the map's drawing order. After you add the reference, you may want to update the Layer List and the map's drawing order.

After you have configured a reference to another site, you can modify the inherited configuration. Your changes override the inherited configuration. Inherited components and settings are modified and removed in exactly the same way configured components and settings are modified and removed. For example, to modify the default visibility of an inherited map service, edit the map service, change the Visible setting, and save your change. Similarly, to remove an inherited workflow, go to Manager's Workflows page and remove the workflow, the same way you would remove any other workflow.

When a site references another site, the site remains linked to the source site. If the source site is modified, the change is reflected in the site that references it. If the source site is removed, you are forced to remove the reference from the site that references it the next time you edit the site. You cannot make any other changes to the site until you have removed the reference.

References can be chained. For example, if Site A references Site B and Site B references Web Map C and Site D, then A inherits B, C, and D.

See also...

Inherit Another Site's Configuration

Add a Reference to Another Site

Do not add a site reference to a site that contains multiple layer catalogs, as this may lead to unexpected behavior. Use a single layer catalog instead.

To reference another site:

  1. In Manager, edit the site that you want to configure, and then click Site Info in the side panel.

  2. In the References area, click Add Reference.

  3. Select Reference another site, and then click Next.

  4. Select the site you want to reference from the Site list, and then click Next.

  5. Click Finish.

  6. Click Save Site.

Remove a Reference

Removing a reference removes all the components that are inherited from the referenced site or web map.

To remove a reference:

  1. In Manager, edit the site that you want to configure, and then click Site Info in the side panel.

  2. In the References section, click the Remove tool beside the reference that you want to remove.

    You are prompted to confirm.

  3. Click OK.

  4. Click Save Site.

Verify your Configuration

Manager provides an easy way to verify your configuration when you add elements to your site. If you have configured at least one component of a particular type, Manager displays an GERE_MGR_icon-open_REST_API_Sites_directory.png icon that links to the page in the REST API Sites Directory. The directory page lists these components.

For example, if you select the icon on Manager's Print Templates page, the Sites Directory opens to the page that lists the print templates that are configured for that site.

Click the icon to navigate to the REST API Sites Directory's corresponding page

Save your site before you open the REST API Sites Directory. New components do not appear in the Sites Directory until the site is saved.

Delete a Site

When you delete a functioning site, users immediately lose access to the site. Deletion is permanent.

When a site is deleted, the site's root folder may not be deleted. A site folder is deleted only when every file in the site folder can be deleted.

Manager can only delete the following files and folders:

Manager cannot delete any resource folders, virtual directories, or files other than those that are listed above.

To delete a site:

  1. In Manager, click the Sites tab.If another site is open for editing, click Save Site and then Close Site to return to the Sites list.

  2. Follow the instructions for the view of the Site List that you are using:

    • Tiled View: Position the pointer over the thumbnail image of the site that you want to delete, and then click the Remove Site tool . When you are prompted to confirm, click OK.

    • List View: Click the  tool beside the site that you want to delete, and then click the Remove Site tool . When you are prompted to confirm, click OK.

Site Initialization and Loading

The site configuration that you define in Manager cannot be used directly by viewers. To prepare a site so it can be used by other applications, Essentials performs the following steps ("loads" the site):

  1. Initialization: Initialization converts the site configuration to a form that applications can work with (the "site object") and gathers information about the components in the site.

  2. Caching: Caching stores the site object on disk. The site is now ready to serve to applications.

The load sequence occurs when an application requests a site and the cached information about the site is out of date or does not exist. The request could come from a client application (a viewer), or from the server (Manager). When an application requests a site:

  1. Essentials looks for the site in the cache for the current version of Essentials.

  2. Cache Missing: If the cache for the current version of Essentials is missing, Essentials loads the site, which creates the cache.

    Cache Found: If the cache exists:

    1. Essentials checks to see if the Site.xml file has been modified since the cache was created.

    2. If the site configuration has been modified, Essentials loads the site, which updates the cache.

  3. Essentials serves a copy of the cached site to the application that made the request.

Initialization

Initialization is the process of converting the site configuration defined in the Site.xml file into objects that viewer applications can work with. These objects are called business objects because they represent the entities in the business domain that the GIS system is designed to support.

Essentials provides a number of classes of business object out of the box, some of which are common GIS entities, like map services and layers. Others correspond to Essentials features, like workflows and data links.

When you configure a site, you are configuring instances of the business objects that you want to be included in your site. For example, if you configure a Zip Codes layer, you are instructing Essentials to create an instance of the Layer class (in other words, create a Layer business object) and name it Zip Codes.

As part of the initialization process, Essentials communicates with each component configured in the site to gather the information it requires about the component. This includes connecting to each service. For example, Essentials connects to each map service to get information about the service's layers, metadata, spatial reference, and so on.

If Essentials cannot connect to a service during initialization because the network or the service is down, Essentials attempts to perform the initialization using previously cached information about the service.

If a service is unavailable during initialization:

  1. Essentials checks to see if the site was previously cached.
  2. Essentials uses the cached information, if it exists.

    Previously Cached

    If the site was previously cached, Essentials gets the information about the service from the most recent, valid copy of the cache.

    To identify the service in the copy of the cache, Essentials looks for the service's:

    • ID

    • provider invariant name

    • connection string

    All three attributes must match. If you have changed one or more of these attributes in the configuration, Essentials does not find the service in the copy of the cache.

    If Essentials finds the service in the copy of the cache, the information about the service is carried forward from the old cache to the new cache when the cached is updated, instead of getting fresh information from the service itself.

    Never Cached

    If the site has never been cached, site initialization fails because Essentials has no information about the unavailable service, and no way to obtain the information. The first time a new site is initialized, Essentials must be able to connect to each service that is configured in the site.

Starting in Essentials 3.14, you can configure a site (including its services) when its services are unavailable, provided the site has been initialized and cached at least once. (In Essentials 3.13 and earlier versions, site initialization failed if a service was unavailable, regardless of whether cached information about the service was available. This prevented you from configuring a site when one or more of its services was unavailable.)

To determine whether a service was available when a site was initialized, compare the Site Loaded time in the REST API Sites Directory to the Service Loaded time—if the two times are the same, the service was available when the site was initialized. You can also get the Site Loaded time from the Site Summary in the Site List.

In the following screen capture, the Charlotte map service last loaded at 2:25 and the site loaded over an hour later, at 3:37. This indicates that the map service was not available the last time the site loaded, so Essentials used cached information about the map service.

The map service was not available when the site was last loaded

To open the Sites Directory, click the Open the Site's REST Endpoint icon anywhere that it appears in Manager (usually at the top of the center panel).

Caching

After a site is initialized, Essentials writes the site to disk ("caches" the site). Essentials uses copies of cached sites to fulfill site requests. This improves performance, because a site does not have to be converted from XML and initialized every time an application requests the site. The copies of cached sites that are served are kept in memory, which also improves performance.

Sites are cached in a file called SiteCache.xml. The information for a particular site is added to the file the first time the site is loaded.

Essentials creates or updates SiteCache.xml as needed during the load sequence, specifically:

Site caching is built into Essentials—you cannot disable it.

Refresh Site Cache

You can force Essentials to refresh a site's cache. This is useful if the site's map services have been modified with ArcGIS software.

To refresh a site's cache:

  1. Do one of the following:

    • Edit the site in Manager, make a change to the site, and then save the site.

      Changing the site's description on the Site Info page is an easy change to make that does not affect the content or behavior of the site.

    • Edit the Site.xml file in a text editor and save it.

    • Click the Reload Site tool in the Site List.

      Location of the Reload Site tool

      When you use the Reload Site tool on a site, any changes to its ArcGIS map services will be recognized. However, if a layer was renamed, or there is a conflict between the structure of the layers configured in Manager and the ArcGIS map services, you are prompted to match the layers accordingly. For more information, see Map Service Changes.