GASwerk SOA Stack sample

This sample project shows a simple process which can be deployed to GASwerk SOA stack. Currently this is a BPEL process accessible via SOAP. The BPEL process checks the input parameter and returns a value. In this simple scenario the return value is set to 'GASwerk' if the parameter is 'first' otherwise the value is set to 'SomethingElse'.

The sample can be found (in subversion) here or as compiled archive in the download section. The code from subversion requires Maven 2.

The following image shows the sample routing through GASwerk SOA Stack.

  1. SOAP Request from client to server. This is configured via ServiceMix HTTP Binding component.
  2. Message is routed to JBI NMR
  3. Message is routed to the Camel Routing Engine. The Camel routing definition is also deployed as JBI package to ServiceMix.
  4. Message is routed back to the NMR according to the rule specified within the Routing Engine
  5. Message is routed to the Business Process Engine. The BPEL process is deployed to ODE which also runs within ServiceMix.
  6. The result is routed back to the NMR
  7. Message is routed back to the binding component
  8. SOAP response is delivered to the client

Testing the process

The sample contains a simple HTML test page to play with the sample. The following SOAP request can be sent to GASwerk SOA Stack:
<?xml version="1.0" encoding="UTF-8"?> 
  <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
      xmlns:gas="http://gaswerk.sourceforge.net/soa-stack/sample/bpel">
    <soapenv:Body> 
      <process> 
        <payload>
          <gas:SampleBPELProcessRequest>
            <gas:input>first_nichts</gas:input>
          </gas:SampleBPELProcessRequest> 
        </payload> 
      </process>
    </soapenv:Body> 
  </soapenv:Envelope>