Migrating Web Services
Once you've developed a component interface based web service, how do you migrate it between environments?
I've found the best way is to migrate just the component interface (and security if appropriate) and then to recreate the CI-based service and provide the web service. This is a lot cleaner than copying IB definitions (services, service operations, handlers, routings etc) between environments as you still need to validate the CI-based service in the target environment and provide the web service again.
Migrating the IB definitions also leads to multiple versions being created that aren't used, and therefore more definitions than what is actually necessary. This is because you need to validate the CI based service, recreate the operations and provide the web service again.
This article goes through how to migrate your web services between PeopleSoft environments including the additional steps required to get your web service up and running again.
The steps involved are:
- Create a new application designer project
- Put your component interface into the project
- Migrate the project, either to another database or to file
- Validate the project in the target environment
- Set up component interface security in your target environment
- Create your CI-based web service in the target environment
- Provide your web service in the target environment
Create and migrate the project
Create a new application designer project and add your component interface to it. If appropriate add the permission list(s) that give you access to your component interface. Alternatively, you can set up security in your target environment to give you access to the component interface after the migration.
Create the CI-Based service
The steps here are the same as what is covered in detail in the article on CI-based web services. Briefly, they are:
- Select the appropriate methods to create operations for
- Press the Display Selected Actions button
- Confirm the actions, and press the Perform Selected Actions button
Provide the web service
Again the steps here are what is covered in detail in the article on CI-based web services. Briefly they are:
- Select your service name (remember it will have a CI_ prefix)
- Select the operations
- View and generate the WSDL
- Validate the WSDL URL
Confirm that your web service is working using the WSDL URL.
Deleting a web service
You can use the deleting definitions application designer trick to delete a web service and all corresponding IB definitions.
First, create the delete project. Then, select
Insert > Definitions into Project (or
CTRL + F7) and select a definition type of Services. Find your web service name (e.g.
CI_MESSAGE_CATALOG) and highlight all the related definitions and insert them all into the project as shown in the screenshot below:
Next, go into upgrade view and open up one of the definition categories. In the window that appears, right click and select Set Action for Project followed by Delete as shown:
If deleting from the same environment, copy the project to file and then re-import it. If deleting in another environment, migrate the delete project to that environment.
Verify that the web service has been deleted by navigating to the following and confirming that your web service no longer exists.