Find Nearby Features SOAP Server Object Extension


PurposeThis samples is a Server Object Extension that finds features in the vicinity of a location, deployed as a SOAP based web service. The distance and location are provided by the user.

How to use

See How to use ArcGIS samples for help on running the sample.

Data has been provided for your use with this sample. It can be found at <Your ArcGIS Developer Kit Install directory>/Samples/data/mxds/portland.mxd and <Your ArcGIS Developer Kit Install directory>/Samples/data/portland/portland.gdb.
If the sample has associated data, you will find that the sample's zip file includes a "data" folder alongside the language folders. However, you will need to update the sample to point to the location of the data once you have extracted all the files.

How to deploy FindNearbyFeatures SOE to ArcGIS Server?
  1. Copy the FindNearbyFeatures_SOAPExt.jar file that holds this SOE, from the $AGSDEVKITJAVA/java/samples/arcobjects/serverobjectextensions/findnearbyfeatures_soap/lib folder to $AGSSERVERJAVA/java/lib/ext folder.
  2. Alternatively, if you open this sample's Eclipse project in Eclipse IDE, you can export the FindNearbyFeaturesSOE.java file to a jar file and save the jar file to the $AGSSERVERJAVA/java/lib/ext folder. Please ensure that the WSDL file resides in the root folder of the SOE jar file.
  3. Log into ArcGIS Manager. Navigate to "Manager Extensions" page in "GIS Server" section.
  4. Refresh this page. If the jar file containing FindNearbyFeatures SOE indeed exists in $AGSSERVERJAVA/java/lib/ext folder, then ArcGIS Manager will display a record for this SOE on this page.
  5. Click on "Register" link next to the FindNearbyFeatures SOE.
  6. The FindNearbyFeatures SOE is now registered as extension to all Map Services.
  7. If the WSDL file is missing from SOE jar file, ArcGIS Manager will display an error accordingly. Make sure the WSDL resides in root folder of the jar file. ArcGIS Manager places this WSDL file into the $AGSSERVERJAVA/XmlSchema folder for later use.
  8. If using Windows 7, ArcGIS Manager will be unable to place WSDL file into $AGSSERVERJAVA/XmlSchema folder. Please place this WSDL file in the XmlSchema folder manually.

How to enable FindNearbyFeatures SOE with particular instance of Map service?
  1. Publish a map document as map service using ArcGIS Manager or ArcCatalog's "Publish GIS Resource" or "Add New Service" wizards. You can create the map service using any map document. ArcObjects Java SDK includes several sample map documents in $AGSDEVKITJAVA/java/samples/data/mxds folder.
  2. On the "Capabilities" page of "Publish GIS Resource" or "Add New Service" wizards, select the capability that matches with FindNearbyFeatures SOE. Ensure that the check box next to the capability is checked. If there is no capability that matches with "FindNearbyFeatures", please check if previous SOE deployment and registration step was executed correctly.
  3. If the SOE has capabilities of its own, please select the appropriate ones.
  4. Complete the publishing process and restart map service if necessary.
  5. Ensure that map service shows FindNearbyFeatures SOE as a capability after it is started, in ArcCatalog or ArcGIS Manager.

How to consume FindNearbyFeatures SOAP service?
  1. Import the "findnearbyfeatures_soap" Eclipse project from $AGSDEVKITJAVA/java/samples/arcobjects/serverobjectextensions.
  2. Navigate to src/arcgissamples/soe/soapclient package and ensure that FindNearbyFeaturesSOAPClient client application is present.
  3. Verify that FindNearbyFeaturesSOE_stubs.jar is present in the project's build path. This jar carries stubs for SOAP SOE's client application. This jar resides in the $AGSDEVKITJAVA/java/samples/arcobjects/serverobjectextensions/findnearbyfeatures_soap/lib folder.
  4. Ensure that the following jar files are also present in the project's build path: $AGSSERVERJAVA/java/lib/webservices/arcgis_agsws_stubs.jar, $AGSSERVERJAVA/java/lib/webservices/arcgis_ws_runtime.jar, $AGSSERVERJAVA/java/lib/shared/jsr173_1.0_api.jar, $AGSSERVERJAVA/java/lib/shared/jaxb-impl.jar, $AGSSERVERJAVA/java/lib/shared/jaxb-api.jar, $AGSSERVERJAVA/java/lib/shared/commons-logging-1.0.4.jar, $AGSSERVERJAVA/java/lib/shared/activation.jar, $AGSSERVERJAVA/java/lib/shared/commons-codec-1.3.jar, and $AGSSERVERJAVA/java/lib/shared/commons-httpclient-3.0.1.jar
  5. Compile and execute the soapclient/FindNearbyFeaturesSOAPClient Java application.
  6. Check the output messages of the application. This application instantiates the stub class using SOE's HTTP URL and makes a call to those methods that are exposed as operations in the WSDL.

How to disable FindNearbyFeatures SOE with Map service?
  1. Use ArcGIS Manager or ArcCatalog to access map service's properties.
  2. On "Capabilities" page, uncheck the check box next to FindNearbyFeaturesSOE Capability.
  3. Save the map service and restart it if necessary.
  4. The FindNearbyFeatures SOE is now disabled on that map service.

How to un-deploy FindNearbyFeatures SOE?
  1. Log into ArcGIS Manager. Navigate to "Manager Extensions" page in "GIS Server" section.
  2. Click "UnRegister" link next to FindNearbyFeaturesSOE.
  3. The FindNearbyFeatures SOE is now unregistered from ArcGIS Server.
  4. Remove the SOE's jar file from $AGSSERVERJAVA/java/lib/ext folder.


Download the files for Java
soe/FindNearbyFeaturesSOE.java The Find Nearby Features Java Server Object Extension class.
soe/IFindFeatures.java A custom interface that exposes the SOE's SOAP callable methods. The above SOE implements these method.
soe/soapclient/FindNearbyFeaturesSOAPClient.java A client console application that consumes the SOE's web service through Internet connection.
FindNearbyFeaturesSOE_stubs.jar A jar file that contains proxies to generate and send SOAP requests to this SOE.
FindNearbyFeaturesSOE.wsdl A WSDL file that provides information about which methods are made available to this SOE's SOAP clients.




Development licensing Deployment licensing
Server Server