Exposing ArcGIS Server functionality with 52°North WPS
Walkthrough - Short version
Editors: Matthias Müller, TU Dresden; Bastian Schäffer, 52°North
Note: A more recent tutorial can be found
here.
Prerequisites
- Setup an ArcGIS Server 9.3 or later (please refer to the ESRI documentation for this step)
- Download and install Apache Tomcat (5.5 or later), preferably on the ArcGIS Server machine
- Download the latest version of the 52°North WPS from here
- Rename the downloaded .war file from to
wps.war
and put it into the /webapps
folder in the Tomcat installation (which was installed under 2).
- Start Tomcat. You will notice, that tomcat creates a new folder named:
/webapps/wps
- Stop Tomcat.
Install Processes
- Create a folder (you are free to choose your own path) e.g.:
C:\localWPSFiles\wsBase
as a folder or network share that can be accessed by the ArcGIS Server machine as well as the WPS instance.
Please choose the user rights of this folder carefully - if there are any access issues, the WPS will crash without warning during execution. The safest way for a first time deployment is to set up ArcGIS Server and WPS Server on the same machine and use a local folder instead of a shared network folder.
- Create a second folder (you are free to choose your own path) e.g.: C:\localWPSFiles\xmlDescriptions as the place to store the DescribeProcess XML for the Geoprocessing operators that you wish to offer.
These files will be returned by the WPS on a DescribeProcess request and are also used for the internal parameter mapping from the WPS process interface to the ESRI geoprocessor interface.
- Copy all files from ../webapps/wps/examples/localWPSFiles/XMLDescriptions
to
C:\localWPSFiles\xmlDescriptions
The WPS process will expose each ArcGIS Server Function that is represented by a ProcessDescription in this folder as a WPS process. Future version will provide a more convenient way of doing this.
- Open the wps_config.xml file located under
..\webapps\wps\config
- If not already there, you have to add (or uncomment) the following XML structure to your wps_config.xml file as a child of the <AlgorithmRepositoryList> element:
<Repository name="AGSRepository" className="org.n52.wps.ags.AGSProcessRepository" active="true">
<Property name="IP" active="true">vsoknos.geoinformatik.geo.uni-muenster.de</Property>
<Property name="DOMAIN" active="true">vsoknos.geoinformatik.geo.uni-muenster.de</Property>
<Property name="USER" active="true">wpsuser</Property>
<Property name="PASS" active="true">password</Property>
<Property name="WORKSPACEBASE" active="true">C:\localWPSFiles\wsBase</Property>
<Property name="ARCOBJECTSJAR" active="true">C:\Programme\ArcGIS\java\lib\arcobjects.jar</Property>
<Property name="DESCRIBE_PROCESS_DIR" active="true">C:\localWPSFiles\xmlDescriptions</Property>
</Repository>
- The <Property> elements are used to configure your local WPS and AGS installation. The following table provides an overview:
IP |
IP or hostname of your machine |
DOMAIN |
Domain of your machine |
USER |
AGS User, please see AGS installation |
PASS |
AGS User, please see AGS installation |
WORKSPACEBASE |
Folder created under 7) |
ARCOBJECTSJAR |
The path to the arcobjects.jar of your ArcGIS Server installation. This file is usually located in %ARCGISHOME% ArcGIS java lib arcobjects.jar. |
DESCRIBE_PROCESS_DIR |
Folder created under 8) |
Please modify the values of the <Property> elements according to your needs.
- In addition, configure the following structure the hostname of your machine and the port where tomcat is running.
<Server hostname="localhost" hostport="8080" [...]
Test
- Save the
wps_config.xml
file.
- Start Tomcat.
- Open the following URL in a browser: http://<hostname>:<hostport>/wps/WebProcessingService?Request=GetCapabilities&Service=WPS and replace first
<hostname>
and <hostport>
with the corresponding values. You will see the Metadata of the deployed service including all configured ArcGIS Server functions exposed as WPS processes.