Describing Available REST Services

You can generate a description of the REST services that are offered by your REST services application, by clicking the Generate Description button on the Web Options sheet of the Define Application dialog.

The description includes only the classes and the superclasses referenced by the specified parameter values and return types of the communications methods of the JadeRestService subclass selected for the application. Note, however, that no class description is included if those methods return only Any or a primitive type.

The XML file contains the following information.

The following description file is not an exposure, but it would be of value to a REST client developer building requests and handling responses.

<Application name="RestApp" 
    uri="http://localhost/jade/jadehttp.dll/"
    example="http://localhost/jade/jadehttp.dll/Person.json?RestApp">

    <resources>
        <method name="DELETE" id="Customer">
            <request>
                <param name="pId" type="int" />
            </request>
            <response type="empty" />
        </method>

        <method name="GET" id="Customer">
            <request>
                <param name="pId" type="int" />
            </request>
            <response type="Customer" />
        </method>

        <method name="GET" id="CustomerName">
            <request>
                <param name="pId" type="int" />
            </request>
            <response type="String" />
        </method>

        <method name="POST" id="Customer">
            <request>
                <param name="pName" type="String" />
                <param name="pAddress" type="String" />
            </request>
            <response type="empty" />
        </method>

        <method name="PUT" id="Customer">
            <request>
                <param name="pId" type="int" />
                <param name="pName" type="String" />
                <param name="pAddress" type="String" />
            </request>
            <response type="empty" />
        </method>

    </resources>

    <CommunicationClasses>

        <Customer>
            <address type="String" />
            <id type="int" />
            <myRoot type="Root" />
            <name type="String" />
        </Customer>

        <Root>
            <allCustomers type="List&lt;Customer&gt;" />
            <id type="int" />
        </Root>
    </CommunicationClasses>
</Application>