Migrating 4.3 projects that use Web Services Client adapters
In Apama 5.0, to use Apama projects that were created using the Web Services Client adapter in Apama 4.3.4, you need to perform the following migration steps.
1. Import the release 4.3.4 project into a new Apama 5.0 workspace or open an existing 4.3.4 workspace in Apama Studio. When first accessed Apama Studio will report some errors in the projects.
2. To eliminate these errors, do the following:
a. Right-click the project name and select Properties from the pop-up menu. The Properties dialog appears.
b. In the Properties dialog, select MonitorScript Build Path and select the Bundles tab.
c. Select the WebServices Client Adapter entry and click the Update button.
This updates the WebServices adapter bundle.
d. When you click the Update button, Studio asks if you want to “Backup the existing files”. If you select Yes, Studio will create backup property and configuration files under the <apama_project_name>/bundle_instance_files project node.
3. If Apama Studio still reports errors in the project, refer to “Updating EPL to interact with WebServices”.
Updating EPL to interact with WebServices
In some situations, you may need to modify your existing code to be compatible with changes introduced in the Web Services Client adapter in release 5.0.
Apama 5.0 only support requests and responses from public contexts. If your application needs to make requests from a private context, you need to write appropriate EPL code in order to make requests and listen for responses.
Service monitors no longer support WebService timeouts; these need to be handled by EPL code in your Apama application.
After the modifications listed above have been made to an existing 4.x Apama project, the project can be run successfully in Apama 5.0.
Note: In this release, WSResponse, SetupContextListeners and TerminateContextListeners events are deprecated.
Change to XML parser
Apama 5.0 uses Saxon to parse XPath expressions unlike earlier releases of Apama that used Xerces. If you use XPath queries to fetch the text content of an XML element, you need to explicitly use the text() function at the end of your XPath query. If you do not use the text() function, the entire element will be returned.