[FrontPage] [TitleIndex] [WordIndex

NOTE: This page is outdated. If you are looking for up-to-date information, please refer to the official documentation on the deegree homepage.

deegree 3 processingService

1. Features of the implementation

2. See a demo installation

A running version can be accessed on the deegree 3 wps-workspace. It features some example processes as well as a simple client for sending raw WPS requests.

3. Get it up and running

Follow the steps described here.

NOTE: Please use the Firefox browser for performing the configuration steps.
There are known problems with other browsers (e.g. Safari and Chrome) that cause configuration changes not being saved properly. Sorry for this inconvenience, we're trying to fix this as soon as possible!

Log into the services console (the password is "deegree").

Go to workspaces.

Import the "wps-workspace".

Start the "deegree-workspace-wps-3.x.x".

4. Configuration basics

In addition to the standard general deegree workspace settings, a workspace for a deegree processingService uses the following additional directories / files:

`-- services
|   |-- ...
|   |-- wps.xml
|-- processes
|   |-- ...
|   |-- ...
|   `-- ...

Use the "Reload" link in the administration console or restart the application container to activate configuration changes.

5. Injecting processes

wps_architecture.png

As depicted in the architecture diagram, process configuration is based on the notion of so-called process providers. The directory $WORKSPACE/processes/ contains XML files (*.xml) that activate and configure the process providers. The root element of each file determines the process provider type that it affects. Please note that it is possible to have multiple process provider configuration files for the same process provider -- each file will cause a new instance of the respective provider to be initialized by the processingService.

5.1. Java processes

If you want write your own Java-based process, please read on to learn HowToCreateWPSProcesses using the Java process provider. This page also explains the available configuration options. Process configuration files for the Java process provider use ProcessDefinition as root element (in the namespace http://www.deegree.org/processes/java). Here's an example:

<ProcessDefinition configVersion="3.0.0" processVersion="1.0.0" storeSupported="true" statusSupported="false"
  xmlns="http://www.deegree.org/processes/java" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.deegree.org/processes/java http://schemas.deegree.org/processes/java/3.0.0/java.xsd">
  <Identifier>Buffer</Identifier>
  <JavaClass>org.deegree.wps.jts.BufferProcesslet</JavaClass>
  <Title>Process for creating a buffer around a GML geometry.</Title>
  <Abstract>The purpose of this process is to create a buffer around an existing geometry with a buffer distance specified by the user.</Abstract>
  <InputParameters>
    <ComplexInput>
      <Identifier>GMLInput</Identifier>
      <Title>GMLInput</Title>
      <DefaultFormat mimeType="text/xml" encoding="UTF-8" schema="http://schemas.opengis.net/gml/3.1.1/base/geometryComplexes.xsd" />
    </ComplexInput>
    <LiteralInput>
      <Identifier>BufferDistance</Identifier>
      <Title>Buffer distance</Title>
      <DataType reference="http://www.w3.org/TR/xmlschema-2/#double">double</DataType>
      <DefaultUOM>unity</DefaultUOM>
    </LiteralInput>
  </InputParameters>
  <OutputParameters>
    <ComplexOutput>
      <Identifier>BufferedGeometry</Identifier>
      <Title>BufferedGeometry</Title>
      <DefaultFormat mimeType="text/xml" encoding="UTF-8" schema="http://schemas.opengis.net/gml/3.1.1/base/geometryComplexes.xsd" />
    </ComplexOutput>
  </OutputParameters>
</ProcessDefinition>

5.2. Sextante processes (work in progress)

NOTE: The Sextante process provider is still in an early phase and may not work as expected.

Process configuration files for the Sextante process provider use SextanteProcesses as root element (in the namespace http://www.deegree.org/services/wps/sextante). Here's an example:

<SextanteProcesses xmlns="http://www.deegree.org/services/wps/sextante">
  <!-- Nothing configurable here, still to come... -->
</SextanteProcesses>

When this configuration file exists, some Sextante vector processes will be added to the processingService. Currently, there are no options available (will change in the future). See implementation notes.

5.3. GRASS processes (planned)

TBD

5.4. FME processes (planned)

TBD

6. Implement your own process provider

You may want to learn HowToCreateWPSProcessProviders

See implementation notes on the Sextante process provider.


CategoryDeegree3


2018-04-20 12:05