ArcGIS for Maritime: Server uses a server object extension (SOE). You will need to add the SOE to a map service within your ArcGIS site to enable Maritime Chart Service functionality for the map service.
Note:
Review the following system requirement information before you set up your service:
- Mapped network drives are not supported for your workspaceDirectories property setting. You must have your .senc files on the physical server to support your internal memory mapping.
- You will exceed a URL length of 2,048 characters if you use display parameters in your GET request. POST is not necessarily supported in all third-party apps. If you cannot support POST in your apps, it is recommended that you increase your allowable URL length using a web.config.xml file.
- For deploying Product on Demand (PoD), you will be required to use web.config.xml to increase your default URL length.
Enabling Maritime Chart Service
Perform the following steps to enable Maritime Chart Service:
- Create a folder called maritimeserver in the ArcGIS Server site at <ArcGIS Server installation drive>\arcgisserver\directories.
Note:
If this location does not exist, verify that your ArcGIS Server site has been created. See Creating a new site.
- Copy the maritimechartservice folder from <ArcGIS Server Installation Directory>\MaritimeServer\Server<version> to the maritimeserver folder created in step 1.
- Log in as a server manager by launching https://localhost:6443/arcgis/manager.
- Click the Site tab.
- In the GIS Server pane, click Extensions.
- Click Add Extention.
- Click Browse and browse to <ArcGIS Install Directory>\MaritimeServer\Server<version>\Bin.
- Click MaritimeServer.soe.
- Click Add.
MaritimeServer.soe is now successfully added.
- Click the Services tab.
- Click your map service.
- In the Map Services pane, click Capabilities.
- Check the Maritime Chart Service check box.
- Verify all the properties.
Note:
The MaritimeServer.soe will look for the maritimechartservice folder mentioned in step 2 to automatically populate the Maritime Chart Service Capabilities properties.
- Click Save and Restart in ArcGIS Server Manager to restart the map service.
Maritime Chart Service capabilities are now enabled.
- You are now ready to load S-57/S-63 datasets to your map service.
For more information on loading S-57 datasets, see Managing data for unencrypted S-57 datasets or Managing data for S-63 encrypted datasets.
Note:
If you want to modify your default configuration settings, see Setting Maritime Chart Service properties.
Note:
If you have installed Maritime Chart Service in a cluster, you only need to enable it on one of the machines in the cluster. The configuration changes will be automatically applied to the other machines in the cluster.
Tip:
For more information on creating a Maritime Chart Service tile package using S-57/ S-63 datasets, see Creating a Maritime Chart Service tile package.
Deploying Products on Demand (PoD)
At 10.5.1 ArcGIS for Maritime: Server has a new functionality that allows you to deploy a web based application to generate information map products on-the-fly and allows you to create any product at any scale.
Perform the following steps to deploy Products on Demand (PoD) within your ArcGIS Server site.
Note:
To complete the following deployment steps for Products on Demand you will need to have a map service with Maritime Chart Service enabled.
For more information see Enabling Maritime Chart Service.
- Create a folder called maritimeserver in the ArcGIS Server site at <ArcGIS Server installation drive>\arcgisserver\directories.
Note:
If this location does not exist, verify that your ArcGIS Server site has been created and Maritime Chart Serviceenabled.
- Copy the productsondemand folder from <ArcGIS Server Installation Directory>\MaritimeServer\Server<version> to the maritimeserver folder created in step 1.
Note:
<ArcGIS Server installation drive>\arcgisserver\directories\ maritimeserver is a recommended install location for Products on Demand.
- Configure the ArcGIS Server account.
Sharing and permissions
Share and add permissions to your <ArcGIS Server installation drive>\arcgisserver folder with the following steps:
- Right-click the arcgisserver folder and select Properties.
- Click the Sharing tab.
- Click Advanced Sharing.
- Check the Share this folder checkbox.
- Click Permissions.
- Click Add on the Share Permissions tab.
- Add your ArcGIS Server account user.
Note:
For more information, see Specifying the locale of the ArcGIS Server account. By default, this user is usually ArcGIS.
- Once the user is added, click OK to close the Select Users or Groups dialog box.
- Select the newly added user in the Share Permissions tab and select Full Control.
- Click OK.
- Click OK again to close the Advanced Sharing dialog box.
- Click Close.
Publishing service definition files
- Login as a server manager by launching https://localhost:6443/arcgis/manager.
Note:
Publish the service definition files using ArcGIS Server Manager. To streamline deployment, it is recommended that you create a folder within ArcGIS Server Manager named POD to organize your PoD related services.
See Publish a service definition to the server in Manager for additional details.
- Click Services > Manage Services, select POD folder, and click Publish Service.
- Click Choose File to browse to the service definition you want to publish, or type the path to the file. Click Browse and browse to the <ArcGIS Server Installation Directory>\MaritimeServer\Server<version> location.
The default location is <ArcGIS Server installation drive>\arcgisserver\directories\ maritimeserver\productsondemand\ServiceDefinitionFiles.
- Select Calculators.sd and click Open.
Caution:
Do not change the name of the service. Doing so will not allow the web application to work.
By default, the service definition is published to the server folder specified in the service definition configuration. If you want to change the folder where the service definition will be published, choose a folder from the drop-down list or select New.
Note:
All PoD service definitions must be in the same folder to properly deploy Products on Demand. It is recommended that you create a folder to organize your PoD related services. By default, POD is recommended.
- Click Next.
You will need to specify properties for your new service. No additional capabilities are required to be selected.
- Click Back or Next as necessary.
- Click Publish.
- Repeat steps 3-6 for ExtentLayer.sd and Gateway.sd.
Your services are now running at http://gisserver.domain.com:6080/arcgis/rest/services/POD and can be accessed by users and clients on your network.
Updating your Utilities.py file
This process must be done after you have published your PoD service definition files. This will allow your Calculator and Gateway geoprocessing services to know where you deployed productsondemand in the steps below.
- In Windows Explorer navigate to Utilities.py file and edit it. The default location is <ArcGIS Server installation drive>\arcgisserver\directories\ maritimeserver \productsondemand\Tools.
This is theshared_products_path where productsondemand will be deployed.
- You will need to update the following variables:
- shared_products_path and output_directory - Update with your machine name, domain and update the path if you did not use the recommended default settings.
- output_url - Use of localhost is only for local testing. Otherwise, update with your machine name and domain and update path if you did not use the recommended default settings.
- Save changes to Utilities.py and click Exit.
- Copy your updated Utilities.py file to your newly published Calculators and Gateway PoD services arcgisinput location.
- Navigate to your arcgisinput location for POD. The default location is <ArcGIS Server installation drive>\arcgisserver\directories\arcgissystem\arcgisinput\POD.
- Copy your updated Utilities.py file located in Step 1 to <Installtion Location>\arcgisserver\directories\arcgissystem\arcgisinput\POD\Gateway.GPServer\extracted\v101\tools.
- Copy your updated Utilities.py file located in Step 1 to <Installation Location>\arcgisserver\directories\arcgissystem\arcgisinput\POD\Calculators.GPServer\extracted\v101\tools
- In ArcGIS Server Manager click Services > Manage Services.
- Click Folders > POD.
- Restart your Calculator and Gateway geoprocessing services.
Setting Maritime Chart Service URL in your layout templates
Products on Demand comes with layout templates that have been predefined with various surround elements and a Maritime Chart Service WMS layer. The default WMS Layer location is http://localhost:6080/arcgis/rest/services/SampleWorldCities/MapServer/exts/MaritimeChartService/WMSServer. If your map service with Maritime Chart Service enabled is different, then you will need to modify your layout templates before finishing your deployment.
Note:
The Layer Properties within the layout template contain a parameter named DPI with a value of 300. This is required to produce chart products at a higher resolution for printing.
Customizing map document templates
Map elements
Products on Demand provides several map document templates for various page sizes and orientation. Each map document contains map elements, such as scale bars, north arrows, and legends, logos, text, or other graphics that are created for specific purposes in the chart. Layout elements can also be data frames.
With the latest release of Maritime Chart Service, templates for page sizes A0 and ANSI E have common chart notes added to them. These common notes are based on charts produced by NOAA. You can modify these notes to fit your local needs. If you do not want to create A0 or ANSI E sized charts with notes, you can remove those templates from your setup and replace them with the previous versions of those templates now renamed with a _withoutnotes suffix.
Tip:
Rename your A0 and ANSI E templates, for example with a _withnotes suffix in their name. Remove the _withoutnotes from your backup A0 and ANSI E templates. The system will now recognize the A0 and ANSI E templates that no longer have common notes.
For more information see Map elements.
Managing elements
During product creation, the map elements are updated dynamically to reflect changes in the chart such as scale, geographic extent and generation date. Products on Demand uses the names of elements to manage and identify which elements are to be modified by the automation script. Map element names should not be changed. If names are modified, then the element cannot be managed using the automation script. If necessary, you can access the name by clicking Element Name on the Size and Position tab on the Properties dialog box.
Data frame
The Area of Interest (AOI) generated in Products on Demand web application is obtained from the map document template's data frame. A calculator finds the bottom left corner of the data frame, then left and bottom edge. Changing the data frame size will impact AOI size.
For more information see What is a page layout?
Configuring web application
Once you have published your services definition files, updated your layout templates, published a map service with Maritime Chart Service enabled and updated your Utilities.py file, you are ready to configure and deploy your Products on Demand web application.
- Navigate to <ArcGIS Server Installation Directory>\MaritimeServer\Server<version>\WebApplications and copy the folder pod to C:\inetpub\wwwroot if using IIS to deploy your web application.
Note:
You can rename POD. This will be the name of the application you access over the web.
- Update your podconfig.js file located under pod\js with your newly published PoD service.
- Update serviceURL to the location created in step 2 of Publishing service definition files. If defaults were used, then the path is http://gisserver.domain.com:6080/arcgis/rest/services/POD.
- It is recommended that your update your MCSURL path to the same map service used in your layout template. The default location is http://gisserver.domain.com:6080/arcgis/rest/services/SampleWorldCities/MapServer/exts/MaritimeChartService/MapServer.
Note:
MCSURL will only be used in the web application for viewing. The layout template WMS service will be used by the print service to create the chart export.
Note:
Your application will use the Esri Ocean basemap. You can select another basemap by modifying the BasemapWithMCS variable.
- Save changes to your podconfig.js file.
- You are now ready to use Products on Demand by launching the application.
Troubleshooting Maritime Server configuration
What if I don't see Maritime Chart Service data in my Products on Demand application?
Verify that the MCSURL set in step 2 of Configuring web application section is accessible to the user accessing the application.
What if I don't see any Maritime Chart Service data in my Products on Demand export?
Verify that the S57 Layer in the layout template being accessed during Products on Demand export is accessible to the user accessing the Products on Demand application.
What if I observe an Unable to complete Operation error?
Add Configure ArcGIS Server Account to install directory if you observe error: Unable to complete Operation. Error Executing tool. CalculateExtent.