In past releases RESTful services were introduced as a complementary integration protocol for Inbound Web Services, which traditionally only supported SOAP. Over the last few releases we have endeavored to standardize our REST support so support both Oracle and industry standards. Supporting these standards reduces both cost and risk for implementations using REST.
In Oracle Utilities Application Framework V220.127.116.11.0, a number of significant changes have been implemented to help standardize the REST interface. The changes include the following:
- Support for Business Objects. In past releases, the REST support has centered around Business Services and Service Scripts. In Oracle Utilities Application Framework V18.104.22.168.0, we not only added direct support for Business Objects but extended the model to include additional methods and URL changes to fully utilize the capabilities of REST and the underlying functionality.
- Support for Additional HTTP Methods. In past releases, the Oracle Utilities Application Framework supported exclusively supported the most common HTTP method, namely POST. In Oracle Utilities Application Framework V22.214.171.124.0, we introduced support for the GET, PUT and PATCH HTTP Methods configurable on the Operation. For backward compatibility the POST method will continue to be the default. This capability is now supported via configuration on individual operations. For example:
Note: POST method should be used for all Business Service and Service Script based operations. PUT, GET and PATCH are applicable to Business Object based operations only.
- Advanced Support for Parameters. In past releases, the JSON/XML payload for the REST Service indicated the record information used to identify the object to process. In Oracle Utilities Application Framework V126.96.36.199.0, we introduced the capability to have the identification of the parameters on the URI or as query parameters, including support for multiple parameters, to support a wide range of REST styles. For backward compatibility, the capability will default to the payload for identifiers as per previous releases, if this capability is not used. This capability is now configurable on individual services and allows for flexibility in parameter naming, the style of the parameter and the mapping to the schema associated with the operation. For example:
- Flexible URI. In past releases, the URI used for REST services was hard-coded to reflect the URI in the container. In Oracle Utilities Application Framework V188.8.131.52.0, the URI is now a combination of the service level URI Component, Resource Category and operation level URI Component. All of these settings is configurable on the Inbound Web Service. For example:
Note: For backward compatibility the default URI, used in past release will be supported for legacy services, but will be deprecated for this new capability to promote standardization.
All these capabilities as well as other integration capabilities are outlined in the Web Services Best Practices (Doc Id: 2214375.1) available from My Oracle Support.