To describe how the system generates external URLs for Web services, we can assume that a URL has two main parts:
The first part contains the URI scheme, the host name, and the port used.
The second part contains the path to the resource and optional parameters.
Example
We have the following WSDL URL: http://service.example.com:50000/ExampleService/Example?wsdl
The first part is: http://service.example.com:50000
The second part is: /foo/bar/ExampleService/Example?wsdl
The system generates the second part of external endpoint and WSDL URL using the available path prefixes and path mappings as described below.
Note
The path prefixes and path mappings apply only to hosts for which you have set WS HTTP Mapping.
Depending on the available path prefixes and mappings, the system generates external URL for Web services in one of the following ways:
If there is path mapping, then the second part of the external endpoint/WSDL URL contains the path specified in the path mapping instead of the original path.
Example
There is a mapping from ExampleService/Example to MyPath. The system generates the second part of the URL as follows:
Internal URL: http://[host]:[port]/ExampleService/Example?wsdl
External URL: http://[vhost]:[vport]/MyPath?wsdl
If there is no path mapping and there is path prefix for endpoint and/or WSDL, then the second part of the generated endpoint/WSDL URL contains the corresponding value specified in the path prefix followed by the original path.
Example
There is my/folder prefix specified for WSDL. The system generates the second part of the URL as follows:
Internal URL: http://[host]:[port]/ExampleService/Example?wsdl
External URL: http://[vhost]:[vport]/my/folder/ExampleService/Example?wsdl
If there is no path mapping and there is no path prefix specified, then the second part of the generated WSDL URL is the same as the second part of internal WSDL URL.