Deploying components to a server

You create integration components in a library in your local file system and deploy them to an InterChange Server Express instance to make them executable. When components are deployed to the server, the server runtime is updated so they can be used immediately.

You can deploy a package of integration components using either the System Manager graphical interface or the repos_copy command-line interface. For information on using System Manager, see Deploying components using the deployment wizard. For information on using repos_copy, see Using repos_copy. For information on the advantages and disadvantages of each interface, see Deciding to use System Manager or repos_copy for deployment.

Deciding to use System Manager or repos_copy for deployment

Table 6 describes the advantages and disadvantages of using System Manager or repos_copy for deployment. Evaluate the two interfaces and use whichever one is best suited to your needs.

Table 6. Advantages and disadvantages of System Manager and repos_copy in deployment
Interface Advantages Disadvantages
System Manager
  • System Manager uses a graphical interface.
  • You can selectively choose the components in the user project that you want to deploy.
  • You can choose to create relationship schemas in the server repository during the deployment, or can choose for them to not be created.
  • You can deploy multiple user projects at the same time.
  • With drag-and-drop deployment, you can deploy user projects, integration component libraries, or even individual components easily.
  • System Manager runs only on Windows.
repos_copy
  • There is no requirement to have components grouped together, as they must be in a user project when deploying through System Manager.
  • Repos_copy is platform-independent.
  • Repos_copy uses a command line interface.
  • You must export the components you want to deploy to a package file first, using either System Manager or repos_copy.
  • You cannot selectively deploy components in the package file.
  • You can only deploy a single package file at a time.

Setting deployment configuration properties

When you deploy a user project from System Manager to different servers, the configuration properties for some of the integration components may need to change for the new server environment. For example, an adapter in your solution may have properties that specify a database URL, a user name, and a password that are all valid for your development and testing server. But the production environment in which the solution will be deployed may require different values for these properties. Rather than manually reconfiguring the adapter (by manually using the connector configurator to change the connector configuration properties) --and other integration components that might require modification for the new environment--you can use the deployment configuration feature of System Manager.

The deployment configuration feature of System Manager enables you to define a set of values for certain integration component properties and make them applicable to a specific server (or servers) that you name. The values are stored in a deployment file (with the extension .dfg) associated with an Integration Component Library. When you deploy an existing user project to one of the servers that you listed in deployment configurator, System Manager uses the property values from the deployment file to modify the existing configuration files for the relevant components of the user project.

This feature can be used to modify the properties of connectors, maps, collaborations, and relationships.

To create and deploy properties using the deployment configuration feature, follow these steps:

Note:
If you plan to deploy encrypted property values, before you begin, open the shortcut properties for your InterChange Server Express instance, and add the path to the JRE you are using.

Opening the deployment configuration dialog

To open the deployment configuration dialog, do this:

Adding a server name

To add a server to the deployment file, in the Select the server section you must designate a name for a server that will use the deployment time properties that you are creating.

Adding integration components

After you have selected or named a server, you must add the integration components, properties, and values that you want to apply for use with that server.

If you have previously added elements for one server, when you later add a new server in the Deployment Configuration dialog, it will automatically be populated with the elements previously created. You can then delete or modify the elements.

If you have not previously added configuration elements in the dialog for any server, you will need to add elements to the dialog for the first time. You can do so either by importing an existing deployment file (described later in this section) or by manually adding elements in the dialog. To manually add elements, position the cursor in the Property Name column, and right-click. The Components Selection dialog appears, displaying all the available integration components in the ICL that you right-clicked to open the Deployment Configuration dialog. Expand the categories as necessary. Then, for each individual component for which you want to configure properties, click the checkbox for the component, and choose OK. Do this in turn for each individual component. When you choose OK each time, the Components Selection dialog closes, and the Deployment Configuration dialog displays, showing the new component that you have added.

Adding properties

For each component that you add, you will need to also add the properties whose values you want to set for that component. To do so:

  1. Right-click in the value field next to the component for which you want to add properties. Choose Add Property.
  2. The Properties Selection dialog appears, prefilled with all the properties that are available within the selected component definition.
  3. Put checks in the boxes for one or more properties, and choose OK.
  4. The Add Property dialog closes, and the Deployment Configuration dialog displays, showing the properties that you have added for the specific component.

Assigning values

Now you need to specify the values that you want to use for these properties. To do so:

  1. Double-click in the Value field for any property.
  2. Enter the value you want to use for that property.
    Note:
    Consult the documentation for your component to determine the available values. The tool does not validate the values as you enter them.

When you are done, click OK. The Deployment Configurator dialog closes. When you open the Deployment Configurator dialog again, the last configuration that you created will be displayed by default. If you have created more than one configuration (that is, if you have named more than one server in the Deployment Configuration dialog) you can display any of the other configurations by using the Please select destination server drop-down box.

Deploying the property values

After you have created a deployment configuration, the integration component properties and their values can be deployed to another server. After deployment, the property values you specified during deployment configuration will be applied to the component that went into the server. You can deploy to a server in either of the following ways:

When you export an ICL or User Project from System Manager, the deployment descriptor.dfg file with the relevant entries will be included with the repository jar file. You can then use the repos_copy utility to repos copy the .jar file into the server. The values for the configuration file inside the .jar file will be automatically applied to the components before being deployed to the server.

If you do not want the transformations to happen, you can suppress them using the following option:

repos_copy -sserverName -uusername -ppassword -ireposcopyfile  -xdn

The -xdn option ignores the .dfg file inside the repository .jar file and sends the deployment package to the server without changing the property values.

Configuring deployment time properties

Deployment time properties are those properties of an artifact that are configured at the time of deployment, rather than at design time. System Manager allows you to specify deployment time properties specific to a server.

When an artifact is deployed to a server, System Manager applies the deployment time properties for that artifact before deploying it. You can also copy the properties of an artifact to more than one server. This keeps you from having to keep track of all the properties of the different components for the different servers. You can identify the properties that will have different values for different servers and add those properties as part of the deployment configuration. You can then configure the values for those properties depending on the server.

When the object is deployed to the server, System Manager automatically applies the configured values for the respective server before deploying it. To configure deployment time properties, right-click on the Integrated component library project and select Edit deployment descriptor. The Deployment Configuration window allows you to do the following:

  1. Add a server - To add a server, click Add server. A dialog appears where you supply the name of the destination server. Click OK.
    Note:
    If a component and a property have already been configured in the configuration dialog, then those values will be applicable to all the servers added to the configuration.
  2. Delete a server - To delete a server, choose the server you want to delete from the list and click Delete server.
  3. Configure properties - In the Select the properties list, you can do the following:

Copying properties between servers

One of the benefits of configuration management is the ability to copy properties between servers. To copy properties, right click on the property and choose Copy from the context menu. To paste the properties, right-click on a component and choose Paste. Multiple properties can be copied from one server and pasted in another. When the properties are copied, so are the values associated with them.

Note:
If the properties being pasted are already present in the server configuration, the paste operation will overwrite the existing values.

Importing and exporting deployment time properties

The deployment configuration can be imported or exported to and from a file from the Deployment Configuration dialog. Properties are exported by right-clicking on the property and selecting Export from the menu. The Export Property Descriptor dialog appears, where you must choose either Selected properties or All properties. Type the name of the file where you want the properties exported, or select Browse to locate the file. Click OK.

To import properties, right-click on the property and choose Import from the context menu. The Import Properties dialog appears. You can choose whether you would like to overwrite your properties or merge them. In the Please select Property Descriptor file field, type in the name of the file or choose Browse. Click OK.

Configuring deployment properties with repos_copy

When you create a repos_copy file out of System Manager, it will automatically have the deployment time properties included in the file. These properties will be applied to the artifacts before sending them to the server. For more information on using repos_copy and command-line options, see Using repos_copy.

Copying and pasting deployment configuration properties

Deployment configuration properties created for one server can be copied and pasted into the configuration for another server. When you copy and paste properties, any values assigned to those properties are copied and pasted as well. When you paste properties, if the properties already exist in the configuration, they are overwritten by the paste operation.

Setting deployment properties without System Manager

A standalone utility, contained in the deploymentconfigutil.zip file in the product \bin directory, can allow a *.dfg file to be edited without the use of System Manager. This can be useful, for example, in a situation where a database administrator needs to have a connector password property set to a specific value for interacting with the database, but does not want to reveal that value to the implementer who is using System Manager. The implementer can use the Deployment Configurator feature of System Manager to create a *.dfg file with default values and then send that file to the database administrator. The database administrator then runs the standalone utility, which allows modification of the property values (not the addition or deletion of integration components or properties). The database administrator uses the utility to modify the password value, and then sends the file back to the implementer, who uses System Manager to import the *.dfg file into Deployment Configurator.

This utility is controlled by a pre-defined password and you must contact the product support center to get one. The password is intended to prevent users without appropriate privileges from changing the passwords or encrypted data specified in the deployment descriptor files.

This standalone utility is contained in the deploymentconfigutil.zip file, which resides in the IBM\WebSphere\bin directory. The file can be extracted and used on a system that does not have either System Manager or InterChange Server Express installed.

Setting the initial states of components for deployment

For components with states (such as connectors, collaboration objects, maps, relationships, and database connection pools), you can set the state in which the component initializes when rebooting the server after deployment. Do the following to set the initial post-deployment state of components:

  1. Select the shortcuts for the components whose initial states you want to set in a user project.

    You can use standard Windows selection techniques to choose multiple components, such as the following:

  2. Right-click the selection made in step and do one of the following:

Validating a package using System Manager

You can validate a package comprised of the components you want to deploy before performing the deployment to ensure that the deployment will succeed. Do the following to validate a package of components:

  1. Add shortcuts for the components you want to validate to user projects.

    For information on creating a user project see Creating user projects, and for information on adding shortcuts to a user project see Adding shortcuts to a user project.

    Note:
    You can validate multiple user projects at once, so add shortcuts for all of the desired components to the appropriate user projects.
  2. In the WebSphere Business Integration System Manager view, select the user projects you want to validate, right-click one of the selected user projects, and choose Validate user project from the context menu.

    System Manager displays the "Validate Project(s)" wizard, as shown in Figure 19.

    Figure 19. Selecting components for validation
  3. Select the server against which you want to validate the components from the Please select the server to validate with drop-down menu.
  4. Use the following techniques to select the components you want to validate:
    Note:
    If you select components with the same name from multiple user projects you will be required to select a single one from among the duplicates at the next screen of the wizard.

    If you have not selected any duplicate components, proceed to step 6.

    If you have selected duplicate components, proceed to step 5.

  5. Click Next.

    System Manager displays the "Local Duplicates" screen, as shown in Figure 20.

    Figure 20. Selecting distinct components from user projects to validate

    Select distinct components among the duplicates.

  6. Click Finish.

    System Manager creates a package containing the selected components and validates it against the server repository. A message is displayed to indicate whether validation was successful or not.

Deploying components using System Manager

You can deploy components to an InterChange Server Express instance in one of two ways described in the following sections:

Deploying components using the deployment wizard

Do the following to use the deployment wizard to deploy a package of components to an InterChange Server Express instance:

  1. Except for maps, if any of the components you want to deploy already exist in the server repository, you must stop them prior to deploying them. (Because maps execute quickly and are normally idle, the system allows active map definitions to be redeployed).

    Use the InterChange Server Express Component Management view or System Monitor to stop the duplicate components in the server before deploying a package. For more information, see Managing component states in the repository.

  2. It is recommended that you set the initial state for the components you deploy. For more information, see Setting the initial states of components for deployment.
  3. Add shortcuts for the components you want to deploy to a user project.

    For information on creating a user project see Creating user projects, and for information on adding shortcuts to a user project see Adding shortcuts to a user project.

    Note:
    You can deploy multiple user projects at once, so add shortcuts for all of the desired components to the appropriate user projects.
  4. In the "WebSphere Business Integration System Manager" view, select each user project you want to deploy to the server instance. You can use standard Windows selection techniques to select multiple user projects for deployment at the same time, such as the following:
  5. Right-click a selected user project and choose Deploy user project from the context menu.

    System Manager displays the "Deploy wizard page 1 screen", as shown in Figure 21.

    Figure 21. Selecting deployable components and deployment options
  6. At the "Deployable Components" screen, do the following:
    1. Select the server instance to which you want to deploy the components from the Please select the destination server drop-down menu.
    2. Use the following techniques to select the components to deploy:
      • Enable the checkbox next to a user project to deploy all of the components in the project.
      • Expand the user project node and enable the checkbox next to entire component groups to deploy all of the components of that type.
      • Expand the user project node and a component group node and enable the checkbox next to individual components to deploy just those components.
      Note:
      If you select components with the same name in different user projects you will be prompted in the next screen of the wizard to choose which component among the duplicates should be deployed.
    3. Enable the Create schema checkbox if you want to create the database connection pool and relationship schemas during the deployment process.

      The schemas for relationships and database connection pools must be created for interfaces that reference them to work. If you are deploying an interface for the purpose of running it then you must enable this option for any components the interface uses.

      Note:
      You should only enable this option if the settings for the database connection pools and relationships reference the appropriate connection information for the server into which you are deploying the components. If you are migrating components from one environment where the database settings were correct to another environment where they will no longer be valid, you may not want to create the schemas for these components during deployment.
    4. Enable the Perform compilation on InterChange Server machine check box if you want to compile component on the interchange server.
    5. Enable the Compile checkbox if you want to compile the map and collaboration templates you selected for deployment.

      Maps and collaboration templates must be compiled for interfaces that reference them to work.

      Note:
      Compiling can take a long time depending on the number of components and you may want to deploy them to the server first and compile them afterwards.
    6. Enable the Skip validation during deployment check box if you know that the object you are deploying has already been validated. Normally you would not select this check box because you are going to validate objects you are deploying.
    7. Do one of the following depending on your selections:
      • If you have not selected any components that are duplicates across the selected user projects and have not selected any components that already exist in the server repository then you may start the deployment at this time; proceed to step 9.
      • If you have not selected any components that are duplicates across the selected user projects, but have selected components that already exist in the server repository, then the "Server Duplicate Objects" screen appears; proceed to step 8.
      • If you have selected duplicate components within the user projects then proceed to step 7.
  7. Click Next.

    If you have selected duplicate components within the user projects then the "Deploy wizard page 2" screen appears, as shown in Figure 22:

    Figure 22. Selecting among local duplicates when deploying

    Expand the folders of the displayed user projects and enable checkboxes for the particular components you want deployed between the local duplicates.

    Do one of the following depending on your selections:

  8. Click Next.

    If you have chosen to deploy components that already exist on the server then the "Server Duplicate Objects" screen appears, as shown in Figure 23:

    Figure 23. Selecting duplicate objects to overwrite in the server

    Expand the folders of the displayed user projects and enable checkboxes for the duplicate components you want to overwrite in the server repository.

  9. Click Finish.

    System Manager attempts to deploy the selected components into the server repository. If you view the server logging output you will see messages logged as the deployment session is started and components are added to the repository.

    When the deployment session finishes System Manager either presents an informational prompt that the deployment succeeded or an error prompt that the deployment failed.

  10. Take note of any significant information displayed in the prompt. For instance, the prompt might tell you to reboot the server to activate some deployed components, or might tell you that the deployment failed because active components cannot be overwritten. Click OK and take whatever actions were specified by the prompt.

Deploying components using drag-and-drop

Do the following to deploy components by using drag-and-drop techniques among the System Manager views:

  1. If any of the components you want to deploy already exist in the server repository you must stop them prior to deploying them.

    Use the InterChange Server Express Component Management view or System Monitor to stop the duplicate components in the server before deploying a package. For more information, see Managing component states in the repository.

  2. Do the following in the WebSphere Business Integration System Manager view to select the components you want to deploy:
  3. Drag-and-drop the selected resources onto the InterChange Server Express instance to which you want to deploy the components in the InterChange Server Express Component Management view.

    System Manager attempts to deploy the components to the specified InterChange Server Express instance. Messages and errors are displayed in the Console view.

    Note:
    If you selected duplicate components in the WebSphere Business Integration System Manager view then System Manager generates an error when you try to deploy the components. Refine your selection to include only unique components and then attempt the deployment again.

Deploying components through the Web

Some WebSphere Business Integration Server Express users deploy solutions created by partners that involve communication across their respective organizations. Until now, communication was limited because the protocol used required additional configuration to communicate through a firewall. Web deployment functionality solves this problem by allowing the partner to perform deployment operations via the Web. This functionality enables a partner to

Web Deployment (WD) is a web-based application that allows users to deploy the components of a reposity file to InterChange Server Express or import the components of an InterChange Server back to a repository file through HTTP and HTTPS, protocols known to easily bypass firewalls. Both the deployment and import processes offer browser-based user interface allowing you to select some or all components to deploy or import. You can deploy and import between repository files and interchange servers.

Note:
Except for maps, if any of the components you want to deploy already exist in the server repository, you must stop them on the server prior to deploying them. (Because maps execute quickly and are normally idle, the system allows active map definitions to be redeployed.)

This section covers the following topics:

Setting Up Web deployment

When you ran the Installer for WebSphere Business Integration Express and included the Administrative Tools in your installation (or chose Typical), the Installer checked for supported versions of WebSphere Application Server and, if it found them, it automatically configured the Web Deployment feature to use them. In the same way, if you chose to install WebSphere Application Server Express 6.0 from the Launchpad before you installed the Administrative Tools, the Installer configured Web Deployment to use WebSphere Application Server Express 6.0.

However, before you can use Web Deployment, you must modify the ServerList.adm file, which contains the name and the location of the InterChange Server Express instance with which Web Deployment will communicate.

To locate the file, search on ServerList within the directory in which you installed the application server you are using with Web Deployment. If you installed WebSphereb Application Server Express 6.0, the location might look similar to this:

C:\IBM\WebSphere\Express60\installedApps\CHANGEMENode01
\WebDeployment.ear\WebDeployment.war\admin\ServerList.adm

Open ServerList.adm in a text editor, and add a line that provides the logical name of the InterChange Server Express instance to which you want to connect, along with the URL. You can add more than one entry, and you can connect to InterChange Server Express instances that are either local or across the Web. For example:

ibmserver=http://localhost:4443
test44=https://9.26.246.77:8080

Registering a new server to Web deployment

Complete the following steps to register a new server and connect to it.

  1. Open a supported Web browser, and enter the URL that has been established for your configuration of Web Deploymentk, as follows:

    http://<host>:<port>:/WebDeployment

    Where host is the IP address of the machine that is hosting the web server, and port is a port number that the web server has been configured to work with. For example, in a default installation of Web Deployment on a machine that is a supported version of WebSphere Application Server or WebSphere Application Server Express 6.0, the URL is typically:

    http://localhost:7089/WebDeployment

  2. From the WebSphere Deployment initial Web page, click Register Server. The Register New Server form opens.
  3. In the Server Name field, select the server you want to register from the drop-down menu.
  4. In the User Name field, enter the user name for this server.
  5. In the Password field, enter a password required to connect to this server.
  6. Click Login.

    If the server connects, the name of the server appears in the left frame under InterChange Server Instances. A connected server icon indicates that the server is connected.

    If the server connection fails, the Register New Server form reappears with an error message. The server is registered, but appears in the left frame with a disconnected server icon.


Deleting a registered but disconnected server

Complete the following steps to delete a registered server. You can only delete a disconnected server.

  1. From the WebSphere Deployment Web page's left pane, right-click the server that you want to delete.
  2. On the context menu, click Delete. The server is deleted and removed from the InterChange Server Instances list.

Connecting a registered disconnected server

Complete the following steps to connect a registered server that has been disconnected.

  1. From the WebSphere Deployment Web page's left pane, right-click the server that you want to connect.
  2. On the context menu, click Connect. The Connect Server form opens with the server name and user name entered from the registered target server.
  3. In the Password field, enter the password required to connect this server.
  4. Click Login.

    If the server connects, the connected server icon appears beside the server in the left pane. If the server connection fails, you receive an error message and the disconnected server icon appears beside the server.

Disconnecting a registered connected server

Complete the following steps to disconnect a registered and connected server.

  1. From the WebSphere Deployment Web page's left pane, right-click the server that you want to disconnect.
  2. On the context menu, click Disconnect.

    If you successfully disconnect the server, the icon beside the server indicates that the server is disconnected. A confirmation form also appears in the right panel to indicate that the server disconnected.

Importing the components of a server

Complete the following steps to import some or all components of a server to a repository file.

  1. From the WebSphere Deployment Web main page, click Import from Server or double-click the name of the server in the left pane. If you selected Import from server and there are not any connected servers, you receive an error message. To connect the server, see Connecting a registered disconnected server.

  2. If you chose Import from Server, the Import Server Components form opens. The tree view of the first connected server in the list is shown. To choose a different server, click the server name and click Update.
    Note:
    If you double-clicked on the server name to get to the Import Server Components form, that server's tree view shows the server's components.
  3. Select some or all components to import from the server.
  4. (Optional) To import all dependent components for the components you selected, check the box, Import the selected components and all their dependent components. Unchecked is the default.
  5. Click Import.

Deploying the components of a repository file to a server

Complete the following steps to deploy some or all components of a repository file to a server.

  1. From the WebSphere Deployment Web main page, click Deploy to Server. The Deploy Repository File form opens.
  2. Select the source repository file from which you are deploying components, and click Go. The system displays all the components of the repostiory file in the tree view.
  3. Select some or all components to deploy from the respository file.
  4. Select any of the following options by checking the adjacent box:

    If the system finds duplicate server components, it displays the Select Server Duplicate Components form with duplicates in the tree view.
  5. Select the duplicate server components that you want to overwrite, and click Deploy to continue the deployment process. If the deployment succeeded, the confirmation form displays. If the deployment failed, the error form displays.

Deleting server components

Complete the following steps to delete a part of or the entire server repository.

  1. From the WebSphere Deployment Web main page, click Delete Server Components. The Delete Server Components form opens with the first connected server's components displayed.
  2. (Optional) To choose a different server, select the server from the combo box and click Update to display its components.
  3. Choose one of the following two options.
  4. Choose one or both of the following options:
  5. Click Delete. The system asks you to confirm the deletion.
  6. Click Ok to delete or Cancel to cancel the deletion.

Copyright IBM Corp. 2004, 2005