OUAF V2.2 Patch 11892365 – Override WSDL URL
By Acshorten-Oracle on Apr 12, 2011
By default, the Web Service Definition Language (WSDL) generated by the XML Application Integration (XAI) component of the Oracle Utilities Application Framework is hardwired into the WSDL (as according to the standard). This can be an issue in multi-server/clustered environments and also in environments where the WSDL is only used at runtime. In the latter case, it is common for a WSDL to be generated in a development environment but deployed to test and production environments. In the default situation, the WSDL would refer to the development instance, which is incorrect.
Typically there are a number of techniques to address this:
- If the Web Service is being called by a middleware product, such as Oracle SOA Suite, the middleware can substitute the correct URL at runtime. This is called Dynamic Endpoints and is a feature of the middleware. Refer to the whitepaper titled Oracle SOA Suite Integration with Oracle Utilities Application Framework based products available from My Oracle Support at Doc Id: 1308161.1 for a discussion of this feature for Oracle SOA Suite. If you are not using Oracle SOA Suite, refer to your vendors documentation for guidance in this regard.
- You can simply change the URL manually in your calling application dynamically. This means manually changing the endpoint manually.
- There is a new feature in Oracle Utilities Application Framework V2.2 that allows the URL used for the WSDL to be generated differently for the WSDL at development time. To install this feature Patch 11892365 (WSDL SERVICE PORT OVERRIDE OPTION) from My Oracle Support, must be installed. When this patch is installed, you can override the URL components (host and port) with alternative values at WSDL generation time by specifying the new URL in the WSDL''s service address location parameter in XAI Options dialog. This allows the alternative to be substituted into the WSDL that is generated. If this parameter is blank, it will revert to the original system generated URL for backward compatibility.
Note: The latter only is performed as part of the original WSDL generation not the deployment of the WSDL.