Processing Requests Using Partial Matching of URL Aliases
REST URL requests usually include the identifier for a particular resource. However, because the identifier varies for each instance of a resource, REST requests often do not exactly match any of the defined URL aliases for a particular resource. To enable you to define URL aliases for REST resources, Integration Server can use partial matching to process REST requests. A partial match occurs when a REST request includes only part of a URL alias. For more information about URL aliases, see the section Creating an HTTP URL Alias in the webMethods Integration Server Administrator’s Guide.
Note:
You can configure URL aliases only for REST resources configured using the legacy approach.
When partial matching is enabled and Integration Server receives a REST request URL, an alias is considered a match if the entire alias matches all or part of the request URL, starting with the first character of the request URL's path.
For example, assume the following URL aliases are defined:
URL Alias | URL Path |
a1 | rest/purchasing/order |
a2 | rest/purchasing/invoice |
a22 | rest/purchasing/admin |
a3 | invoke/pub.flow/debugLog |
When partial matching is enabled, the following request URLs would get different results:
A request URL of
http://MyHost:5555/a1 matches URL alias a1 exactly. The resulting URL is
http://MyHost:5555/rest/purchasing/order.
A request URL of
http://MyHost:5555/a2/75909 matches alias
a2 because the request URL's path begins with
a2. The trailing characters of the request URL are retained and the resulting URL is
http://MyHost:5555/rest/purchasing/invoice/75909.
A request URL of
http://MyHost:5555/a1/75909/customer/0122?terms=net7 matches alias
a1 because the request URL's path begins with
a1. The trailing characters of the request URL are retained and the resulting URL is
http://MyHost:5555/rest/purchasing/order/75909/customer/0122?terms=net7.
Note:
In some cases, a partial match can result in an invalid request. For example, a request URL of http://host:5555/a3456 matches alias a3 because the request URL's path begins with a3. The trailing characters of the request URL are retained and the resulting URL is http://host:5555/invoke/pub.flow/debugLog456. Since there is no pub.flow:debugLog456 service, this would be an invalid request.
For instructions on enabling partial matching, see the section Enabling Partial Matching of URL Aliases in the webMethods Integration Server Administrator’s Guide.