Default Application Usage

An instance of default application allows for the definition of a user defined class which implements EngineRT.Provider. Invocations by binding are passed through by default engine directly to an instance of the indicated class at runtime.

Note that this application type exposes the 'raw' middleware API which may be appropriate for applications which expose one or two interfaces and which define a limited number of partners. It can also be used for testing extension implementations which require a 'mocked' engine. For more complex interactions, we recommend using an alternative application type.

This page is intended to be used as a reference. For more information regarding how applications components are declared and used, please see the the user guide.

Example

The following example defines a runtime application provider which must be implemented by an instance of default engine.

<deployment xmlns="http://bluestemsoftware.org/specification/eoa/1.0/deployment">
  <components>
    <wsdl:description xmlns:wsdl="http://www.w3.org/ns/wsdl" targetNamespace="http://com.mycompany/eoa/1.0" xmlns:tns="http://com.mycompany/eoa/1.0">
      <wsdl:types>
        <xs:schema targetNamespace="http://mycompany.com" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
          <xs:element name="content" />
        </xs:schema>
      </wsdl:types>
      <wsdl:interface name="myInterface" xmlns:ns01="http://mycompany.com">
        <wsdl:operation name="myOperation" pattern="http://www.w3.org/ns/wsdl/in-out">
          <wsdl:input element="ns01:content" />
          <wsdl:output element="ns01:content" />
        </wsdl:operation>
      </wsdl:interface>
      <ext:application xmlns:ext="http://bluestemsoftware.org/specification/eoa/1.0/component/wsdl/ext" name="myApplication">
        <ext:role name="http://some/role" interface="tns:myInterface" />
      </ext:application>
    </wsdl:description>
  </components>
  <providers>
    <application name="tns:myApplication" xmlns:tns="http://com.mycompany/eoa/1.0" xmlns="http://bluestemsoftware.org/specification/eoa/ext/application/default/1.0">
      <configuration>
        <class>org.bluestemsoftware.open.eoa.ext.feature.ws.transport.http.it.suite1.util.MockDefaultEngine</class>
      </configuration>
      <partners>
        <applicationReference applicationName="tns:myApplication">
          <roleReference roleName="http://some/role" />
        </applicationReference>
      </partners>
    </application>
  </providers>
</deployment>