Preparing for IBM PureApplication System, Part 5: Developing virtual application patterns for IBM Workload Deployer with Rational Application Developer

Part 5 of this article series shows how to combine the software development features of IBM® Rational® Application Developer with the virtual application pattern assembly capabilities of IBM Workload Deployer to develop cloud applications. With Workload Deployer, you can assemble virtual application patterns consisting of Java™ EE enterprise applications, Web applications, OSGi applications, and other types of components. However, as an application developer, it is predominantly the source code of the components of the pattern you need to work with the most. The latest integrated features of Rational Application Developer and Workload Deployer will help you develop virtual application patterns from the source code on up.

Share:

Chris Brealey, Senior Technical Staff Member, IBM China

Photo of Chris BrealeyChris Brealey is a Senior Technical Staff Member with IBM Software, Rational Enterprise Architecture, Design and Construction. Chris is based at the IBM Toronto Canada Lab. He is a Chief Architect for Rational Application Developer, with a focus on SOA and SCA, cloud computing, mobile computing, and application lifecycle management. He is a regular mentor on fellowship projects in the Centers for Advanced Studies (CAS). Chris previously led the architecture and delivery of the Rational Application Devleoper Web services tools. Chris joined IBM in 1989 after his graduation from the University of Victoria with a BSc degree in Computer Science.



11 April 2012

Also available in Japanese Vietnamese Portuguese Spanish

About this tutorial

Part 5 of this multi-part article series introduces you to the tools and development practices in IBM Rational Application Developer for the development and testing of virtual application patterns on IBM Workload Deployer.

The previous articles in the series explored IBM PureApplication® System and the techniques and technologies to help you assess, prepare, and migrate enterprise applications to virtual system patterns. In your assessment of an existing enterprise application, or in your design of a new application, you may decide to use a virtual application pattern instead of a virtual system pattern.

Note: All the features in IBM Rational Application Developer that work with IBM Workload Deployer will also work with IBM PureApplication System.

Developing a virtual application pattern is not just about wiring together components like enterprise applications, Web applications, OSGi applications, and databases. It is also about implementing the business logic of those components using languages and tools familiar to ordinary software developers. For example, the business logic of a Web application component may consist of Java™ classes, OSGi bundles, HTML pages, JavaScript functions, and CSS style sheets. These are the types of artifacts that software developers edit, run, and test during a normal work day. It is crucial that the transition to virtual application patterns not disrupt the day in the life of the developer.

IBM Rational Application Developer for WebSphere® software has been enriched with tools that bridge the discipline of writing code to the discipline of assembling virtual application patterns.

In this tutorial, you will learn how to:

  • Create and work with Workload Deployer server configurations.
  • Create and publish virtual application patterns to Workload Deployer.
  • Acquire virtual application patterns from Workload Deployer into Rational Application Developer.
  • Keep virtual application patterns synchronized between Workload Deployer and Rational Application Developer.
  • Deploy virtual application patterns from Rational Application Developer.
  • Detach and remove virtual application patterns from Workload Deployer.
  • Export and import virtual application patterns.
  • Work with the Workload Deployer tools preferences.

Prerequisites

This tutorial is written for Rational Application Developer V8.0.4 and IBM Workload Deployer V3.1. You must have access to a Workload Deployer V3.1 or greater with at least one environment profile defined. Your user account on Workload Deployer requires the following permissions. To check your permissions, select System > Users from the Workload Deployer dashboard, then locate and select your user account. The dashboard shows the characteristics of your user account, including your permissions, meaning the activities you are, or are not, entitled to perform. After you select your user account, confirm that at least the following permissions are present and checked.

Permissions:

  • Deploy patterns in the cloud
  • Create new patterns
  • Cloud administration (read-only view)
  • Appliance administration (read-only view)
  • Auditing (read-only view)

System requirements

You must have Rational Application Developer V8.0.4 or greater installed with the following features as shown in the Installation Manager (see Figure 1):

  • Web development tools
    • Ajax, Dojo toolkit, and HTML development tools
    • JSP and servlet development tools
  • Java™ EE and Web services development tools
  • OSGi development tools
  • WebSphere Application Server development
    • WebSphere Application Server Version 7.0
      • WebSphere Application Server V7.0 development tools
      • Tools for developing applications without a local server installation

Note: You can skip this feature if you have a local installation of WebSphere Application Server V7.0.

  • IBM Workload Deployer development tools
  • Extensibility features
    • Plug-in Development Environment (PDE)
Figure 1. Required features
Required features

Duration

This tutorial takes about 3 hours to complete.


Part 1. Getting started

Note: All the resources for this tutorial are available from the Rational Application Developer Information Center.

To begin, start Rational Application Developer on a new workspace, then import the "OSGi Hello World" and "Ajax Hello World" samples into your workspace.

Start Rational Application Developer

  1. Start Rational Application Developer. For example, on Windows®, select Start > Programs > IBM Software Delivery Platform >Rational Application Developer 8.0 > Rational Application Developer.
  2. In the Workspace Launcher dialog, in the Workspace field, enter a path name of a new workspace, then click OK.
  3. If the Welcome view appears, close it.

Import the OSGi Hello World sample

This sample demonstrates a basic OSGi application. You use it later in this tutorial as the implementation of a component of an application pattern.

  1. From the Rational Application Developer main menu, select Help > Help Contents to open the Help window.
  2. In the Help window, under Contents, expand and select Samples > OSGi > OSGi Hello World.
  3. In the resulting information page for the sample, select Import the Sample.
  4. After a few moments an Import wizard appears. Accept all defaults and click Finish.
  5. If the Open Associated Perspective dialog appears asking you if you want to switch to the Java EE perspective, click No.
  6. In the Enterprise Explorer, confirm the following projects have been added to your workspace:
    • HelloWorld
    • HelloWorld.app

Import the Ajax Hello World sample

This sample is a basic Web application based on Dojo and Ajax technologies. You use it later in this tutorial as the implementation of a component of an application pattern.

  1. In the Help window, under Contents, expand and select Samples > Web > Ajax Hello World.
  2. In the resulting information page for the sample, select Import Sample.

    Note: The information page for the sample may state that "to use this sample, you must install the Feature Pack for Web 2.0". You can ignore this.

  3. After a few moments, an Import wizard appears. Accept all the defaults and click Finish.
  4. If the Open Associated Perspective dialog appears asking you if you want to switch to the Web perspective, click Yes. If the dialog does not appear, confirm the Web perspective is already open. If the Web perspective is not open, select Open Perspective > Other as shown in Figure 2, select Web, then click OK.
    Figure 2. Open the Web perspective
    Open the Web perspective
  5. In the Enterprise Explorer, confirm the following projects have been added to your workspace:
    • AjaxHello
    • AjaxHello_WEB
  6. Close the Help window.

Create a Web application project

You need one more project in your workspace for use later in the tutorial. For the purposes of the tutorial, this project does not need to contain any source code. Rather than import another sample, you simply create a new, empty Web project.

  1. From the Rational Application Developer main menu, select File > New> Project to open the New Project wizard.
  2. Expand and select Web > Dynamic Web Project.
  3. Click Next to proceed to the Dynamic Web Project page.
  4. In the Project name field, enter Webby.
  5. Under EAR membership, clear Add project to an EAR.
  6. Accept all other defaults and select Finish.
  7. If the Technology Quickstarts view opens, close it.
  8. In the Enterprise Explorer, confirm project Webby has been added to your workspace.

Part 2. Exploring the Workload Deployer servers

In Rational Application Developer, a server – also known as a server configuration or server adapter – is a logical object that represents an application hosting test environment, such as an HTTP Preview server, an IBM Mashup Server, a WebSphere Application Server profile, or a Workload Deployer. You do not need a Workload Deployer server to develop Java enterprise, Web, or OSGi applications. However, you should have a Workload Deployer server defined before you start working with application patterns, and you must have a Workload Deployer server defined to publish and deploy your application patterns from Rational Application Developer to Workload Deployer. As a general rule, you need to create your Workload Deployer server sooner than later.

In this part of the tutorial, you create a Workload Deployer server and learn how to work with it via the Rational Application Developer Servers view.

Create the server

  1. In Rational Application Developer, select the Servers tab to show the Servers view. If for any reason the Servers tab is not visible, from the Rational Application Developer main menu, select Window > Show View > Other, select Server >Servers, then select OK.
  2. Anywhere in the Servers view, right-click and select New > Server to open the New Server wizard.
  3. Select the server type Workload Deployer as shown in Figure 3.
    Figure 3. Creating the new Workload Deployer server
    Creating the new Workload Deployer server
  4. In the Server's host name field, enter the host name or IP address of Workload Deployer. The Server name field is given a default name. You do not need to change it.

    Note: Rational Application Developer allows you to create multiple Workload Deployer servers with the same host name or address. Usually one server configuration per Workload Deployer is sufficient, but in some cases having more than one server can be useful. For example, if you are planning to deploy applications to the same Workload Deployer, but to different environment profiles or cloud groups, you can create different server configurations with different environment profile and cloud group selections.

  5. Click Next.
  6. In the Username field, enter your Workload Deployer user ID (see Figure 4).
    Figure 4. Configuring the Workload Deployer server
    Configuring the Workload Deployer server
  7. In the Password field, enter your Workload Deployer password.
  8. Leave Connect automatically after the workbench starts up checked.
  9. Click Load Descriptor.

    Rational Application Developer takes a few moments to contact and retrieve information about the Workload Deployer you specified on the previous page of the wizard, including its version and the names of any defined environment profiles and cloud groups.

    If Rational Application Developer fails to contact Workload Deployer, make sure you entered the correct host name or IP address on the previous page, and make sure you have network connectivity between Rational Application Developer and Workload Deployer. Consult your network administrator for assistance if needed.

    Once Rational Application Developer successfully loads the information it needs from Workload Deployer, new controls appear on the wizard page for you to select an environment profile and a cloud group.

  10. If the Environment profile field is present, click its Select button, as shown in Figure 5, to open the Select Environment Profile dialog. Choose an appropriate environment profile then click OK.
    Figure 5. Descriptor specific settings
    Descriptor specific settings

    Note: Support for deploying virtual application patterns under environment profiles was added to Workload Deployer V3.1. When targeting an earlier version of Workload Deployer, Rational Application Developer does not show a control for selecting an environment profile.

  11. If the Cloud group field is present, click its Select button to open the Select Cloud Group dialog. Choose an appropriate cloud group then click OK.

    Note: Cloud groups are disallowed when deploying cloud application patterns to PureApplication System. When targeting Workload Deployer within PureApplication System, Rational Application Developer does not show a control for selecting a cloud group.

  12. Click Finish to close the wizard. Your new Workload Deployer server configuration appears in the Servers view as shown in Figure 6.
Figure 6. The Servers view
The Servers view

After a few moments, the server state changes to Connected, and a brief background job (Building server descriptor) is dispatched that retrieves further information from Workload Deployer.

Explore the Workload Deployer server in the Servers view

Several actions are available on a Workload Deployer server. If you are familiar with using Rational Application Developer to develop for WebSphere Application Server, several of the actions look familiar. Others are unique to Workload Deployer servers.

  1. In the Servers view, right-click on the Workload Deployer server you created above to open the context menu and review several of its actions. Do not select any of the actions at this time.

Notice that the Start, Stop, and Restart actions, usually available for other types of servers, are greyed out. Traditional servers like WebSphere Application Server are software processes that are started and stopped from Rational Application Developer. By contrast, Workload Deployer and PureApplication System are physical appliances, wired into a power source, equipped with a power switch, and most likely deployed for use by many people. Workload Deployer cannot be shut down or started remotely from Rational Application Developer.

Table 1 shows the actions in the context menu and explains what they do.

Table 1. Workload Deployer server context menu actions
ActionExplanation
Open Opens the server editor.
Publish Publishes pending changes to virtual application patterns in the workspace to Workload Deployer. The application pattern and its artifacts are updated as needed. If the pattern has been deployed from Rational Application Developer, the deployed virtual application is also updated or replaced depending upon the nature of the changes.
Add and Remove... Opens the Add and Remove dialog used to add (publish) and remove virtual application patterns to and from Workload Deployer.
Connect Connects Rational Application Developer to Workload Deployer. Rational Application Developer maintains a passive connection to Workload Deployer by pinging it at regular intervals to ascertain that it is reachable over the network.
Disconnect Disconnects Rational Application Developer from Workload Deployer. Rational Application Developer stops pinging Workload Deployer and treats it as unreachable even if it is still up and available over the network.
Update Server Descriptor... Determines if the descriptive information about Workload Deployer kept by Rational Application Developer is current. If the information is out-of-date, Rational Application Developer offers to update it.
Check Application Synchronization Determines if an application pattern published from Rational Application Developer or acquired into Rational Application Developer has been changed on Workload Deployer.
Acquire Cloud Applications Acquires an application pattern on Workload Deployer into the Rational Application Developer workspace.
Launch Dashboard Opens the Workload Deployer dashboard in the browser.

Explore the server editor

  1. In the Servers view, right-click on the Workload Deployer and select Open, or double-click on the server to open the server editor. Do not make any changes. Instead, spend a few moments to understand the features of the editor, which are grouped into four sections: General Information, Server, Publishing, and Timeouts.
  2. Explore the General Information section as shown in Figure 7.
    Figure 7. The server editor's General Information section
    The server editor's General Information section

    In this section, you can review or change the host name or IP address, or the name of the server.

  3. Explore the Server section as shown in Figure 8.
    Figure 8. The server editor's Server section
    The server editor's Server section

    This section contains most of the controls unique to the Workload Deployer type of server, several of which function as their namesakes do in the New Server wizard.

    The Test Connection button verifies that your host name and credentials are working.

    The Update Descriptor button determines if information about Workload Deployer important to Rational Application Developer, such as its version, list of plug-ins and supported component types, has changed since the last update. If it has, you can choose to load the updated information.

    Rational Application Developer maintains its connection to Workload Deployer by pinging it at regular intervals. The Server ping interval and timeout values control how often Rational Application Developer pings Workload Deployer, and how long Rational Application Developer waits for a response to each ping before declaring the server is disconnected.

    Tip: Leave the option to Automatically start the application when first added to the server unchecked. In Workload Deployer, there is a difference between creating (publishing) an application pattern, and deploying it. The difference is reflected in Rational Application Developer. By default, when you add a virtual application pattern to a Workload Deployer server, Rational Application Developer publishes (creates) the pattern in Workload Deployer, but does not deploy it. You can deploy the pattern any time later by using the Run As > Run on Server action from the Enterprise Explorer, or the Start action from the Servers view.

    If you check the option to Automatically start, Rational Application Developer deploys the pattern immediately after publishing it. It is common that you want to use the Virtual Application Builder in Workload Deployer to edit your pattern before you deploy it. For this reason, and since deployment takes several minutes, leave yourself in full control of when to deploy an application pattern.

  4. Explore the Publishing section as shown in Figure 9.
    Figure 9. The server editor's publishing section
    The server editor's publishing section

    The publishing settings for a Workload Deployer server have the same purpose and effect as WebSphere Application Server. By default, automatic publication is switched off. You can enable automatic publication and control the interval at which Rational Application Developer checks for changes to publish.

    Tip: Leave the option to Never publish automatically checked. Depending upon the nature of the changes you make to your application, publication of changes to Workload Deployer may take from several seconds to several minutes. The option to never publish automatically leaves you in control of when to publish changes to Workload Deployer.

    The Select publishing actions controls are not relevant to Workload Deployer servers.

  5. Explore the Timeouts section as shown in Figure 10.
    Figure 10. The server editor's timeouts section
    The server editor's timeouts section

For a Workload Deployer server, these values control how long Rational Application Developer waits for the operation to start or stop the deployment of an application pattern to complete. If a timeout value is exceeded, Rational Application Developer raises an error stating that deployment or termination of the virtual application pattern did not complete in the allotted time.

Note that these timeout values have a slightly different meaning than for WebSphere Application Server in which they apply to startup and shutdown of the server, not the applications.


Part 3. Creating application patterns in Rational Application Developer

There are two ways to create an application pattern between Rational Application Developer and Workload Deployer. You can create a new skeletal application pattern in Rational Application Developer based upon a selection of Java enterprise, Web, or OSGi application projects in your workspace and publish it to Workload Deployer. Or, you can create an application pattern in Workload Deployer and acquire it into your Rational Application Developer workspace. The latter approach is the more common of the two and is covered in Part 5. Creating application patterns in Workload Deployer. Both approaches result in the creation of an application pattern that effectively resides both in the Workload Deployer storehouse and your Rational Application Developer workspace.

In this part of the tutorial, you use Rational Application Developer to create a new skeletal virtual application pattern in preparation for publishing it to Workload Deployer.

Create a project to contain virtual application patterns

Virtual application patterns are represented by normal files within your workspace. They can be kept in any kind of project. However, it is best to place them in a simple project dedicated to holding virtual application patterns.

Note: The New Cloud Application File wizard warns you against storing virtual application pattern files in specific kinds of projects, including Java EE, Web, and OSGi application projects. The simplest reason for this warning is that virtual application pattern files have no meaning within these kinds of projects. If a virtual application pattern file is created or modified within one of these types of projects, the project may be needlessly flagged for re-publication. Remember that virtual application pattern files compose Java EE, Web, and OSGi application projects – not the other way around.

  1. From the Rational Application Developer main menu, select File > New > Project to open the New Project wizard.
  2. Select General > Project.
  3. Click Next.
  4. In the Project name field, type Cloud apps. In practice, any name will do.
  5. Accept all other defaults and click Finish.

Create a virtual application pattern

  1. In the Enterprise Explorer, right-click on project Cloud apps and select New > Other to open the New wizard.
  2. Select Cloud Application > Cloud Application.
  3. Click Next to proceed to the Cloud Application page.
  4. Select the Cloud apps project if it is not already selected.
  5. In the File name field, type Webby.json.
  6. Click Next to proceed to the "Select a Workload Deployer descriptor" page.
  7. Select the Descriptor combo box to review the choices (see Figure 11), but do not change its default setting, which should be the name of the Workload Deployer server you created in Part 2. Exploring the Workload Deployer servers.
    Figure 11. Selecting a pattern type
    Selecting a pattern type

    In this context, a descriptor is literally the description of the key capabilities of an actual or typical Workload Deployer. The descriptor you choose has a bearing on the behavior of other aspects of the tools.

    For example, if you select the descriptor for an actual or typical Workload Deployer of Version 3.0, the Web Application Pattern Type 2.0 is excluded from the Pattern type combo box since that pattern type is only available in Workload Deployer V3.1 or higher.

    Actual descriptors correspond to the host names or IP addresses of Workload Deployer servers configurations defined in Rational Application Developer. The information stored within an actual descriptor is downloaded from Workload Deployer.

    Typical descriptors are pre-loaded into Rational Application Developer. They represent the capabilities of a standard installation of Workload Deployer. Typical descriptors are useful if you need to begin developing virtual application patterns in Rational Application Developer, but do not have an actual Workload Deployer to use.

  8. The Pattern type combo box is set by default to "Web Application Pattern Type 2.0". Keep this default, but first select the Pattern type combo box to review the other choices.

    Rational Application Developer V8.0.4 supports two pattern types:

    • Web Application Pattern Type 2.0: This is suited to OSGi applications and Java EE 6 or lower applications. Workload Deployer relies on WebSphere Application Server V8.0 for hosting Java EE, Web, and OSGi application components.
    • WebApp Pattern Type 1.0: This is suited to OSGi applications and Java EE 5 or lower applications. Workload Deployer relies on WebSphere Application Server V7.0 for hosting Java EE, Web, and OSGi application components.
  9. Review the list of Supported components. This is information only, telling you what types of components are supported both by Rational Application Developer and Workload Deployer identified in the Descriptor field above. Selecting items in the list has no effect.
  10. Click Next to proceed to the Associate Application Model page.
  11. Click Add to open the New Component and Project Association dialog as shown in Figure 12.
    Figure 12. Selecting a project to associate
    Selecting a project to associate
  12. Accept the default Component name.

    Note: In practice, you usually choose a more descriptive name for your component, but for the purposes of this tutorial, the default is acceptable.

  13. Select Webby from the list of application projects.

    This list shows all projects in your workspace that you can use to implement the types of components supported by both Rational Application Developer and Workload Deployer, namely Web application (WAR), Java EE enterprise application (EAR), and OSGi application (EBA) projects.

    The Filter check boxes control what types of projects are shown in the list. For example, if you un-check the EAR and OSGi check boxes, the list of application projects shrink to show only AjaxHello_WEB, HelloWorld, and Webby.

  14. Click OK to return to the Associate Application Model page as shown on Figure 13.
    Figure 13. The associated Web project
    The associated Web project
  15. Confirm that there is a single entry in the table of Associations for component Component, type WAR, and project Webby.

    Notice the Edit and Remove buttons are available to change your associations. Do not use them now.

  16. Click Finish.

    Rational Application Developer generates a new virtual application pattern JSON file, Webby.json, into a pre-determined folder called applicationModels in the Cloud apps project. In the Enterprise Explorer, expand the Cloud apps project, then expand its applicationModels folder to reveal the file Webby.json.

  17. Rational Application Developer opens the virtual application pattern JSON file in the JSON editor. Close the editor.

    Important: The editor is opened mainly for information purposes. Unless you are an advanced user, perform all editing of virtual application patterns in the Workload Deployer Virtual Application Builder, not the JSON editor in Rational Application Developer.

Explore the actions available on a virtual application pattern

The virtual application pattern JSON file is a conventional workspace file resource. Therefore, several standard actions are available in the context menu for it. Only two of these actions are in any way specific to the Workload Deployer nature of the file.

  1. In the Enterprise Explorer, expand and right-click on Cloud apps > applicationModels > Webby.json to open the context menu.
  2. Select Associate Application Model to open the Associate Application Model dialog.

    This dialog enables you to manage the associations between projects in your workspace and the components of the virtual application pattern.

  3. Do not make any changes. Click Cancel to dismiss the dialog.
  4. Right-click again on Webby.json, then select Properties to open the Properties dialog for Webby.json.
  5. Select Workload Deployer Descriptor.

    The Workload Deployer Descriptor properties page enables you to change the descriptor used to guide your development of the virtual application pattern. The Details section of the page is for information purposes only. Any changes or selections you make using the Pattern type or Support components controls are ignored.

  6. Do not make any changes. Click Cancel to dismiss the dialog.

Explore cloud application project properties

The first time a virtual application pattern JSON file is added to a given project, Rational Application Developer equips the project with the IBM Workload Deployer Application facet.

  1. In the Enterprise Explorer, right-click on project Cloud apps and select Properties to open the Properties dialog for the Cloud apps project as shown in Figure 14.
    Figure 14. Cloud application project properties
    Cloud application project properties
  2. Select Validation to show the Validation properties page.
  3. Check Add Validation Builder to project. If this control is not present, bypass this step.

    By default, general projects like the one you created at the beginning of this part of the tutorial do not include the validation builder. A project without the validation builder is ignored by the validators in Rational Application Developer as shown under Preferences > Validation, including the Cloud Application Validator.

  4. Select Project Facets to show the Project Facets page.
  5. Observe that the IBM Workload Deployer Application facet is checked. Do not make any changes.

    The first time a virtual application pattern JSON file is added to a given project, Rational Application Developer equips the project with this facet. The facet helps the Rational Application Developer Workload Deployer tools to quickly identify projects that contain virtual application patterns.

  6. Click OK to dismiss the Properties dialog.

Part 4. Publishing application patterns to Workload Deployer

During the development of application patterns, you can find yourself editing two kinds of artifacts – virtual application patterns and the source code of the components in the patterns. Rational Application Developer provides the integrated development environment for editing source code. Workload Deployer provides the Virtual Application Builder for editing virtual application patterns. To edit an application pattern that was created within Rational Application Developer, you must publish the application pattern to Workload Deployer. This accomplishes two key things:

  1. The application pattern and associated component projects are exported and delivered to Workload Deployer in a form it can consume and manage.
  2. Rational Application Developer links the application pattern in the workspace to its counterpart in Workload Deployer so that actions taken against the pattern in Rational Application Developer can be reflected in Workload Deployer or vice versa.

Note that publication is not the same as deployment. When you publish an application pattern in Rational Application Developer to Workload Deployer, the pattern is added to the set of virtual application patterns in the Workload Deployer storehouse. By default, Rational Application Developer does not deploy an instance of the application pattern (though an option to that effect is available).

In this part of the tutorial, you publish your application pattern to Workload Deployer and observe the effects within the Rational Application Developer servers view and in the Workload Deployer dashboard.

Publish an application pattern

  1. In the Servers view, right-click on the Workload Deployer server and select Add and Remove to open the Add and Remove dialog as shown in Figure 15.
    Figure 15. The Add and Remove dialog
    The Add and Remove dialog
  2. Under the list of Available resources, select Webby [Cloud apps].
  3. Click Add > to move the virtual application pattern over to the list of Configured resources.
  4. Click Finish.

    Rational Application Developer dispatches a background job to export and publish the virtual application pattern to Workload Deployer.

  5. In the Servers view, the newly added virtual application pattern appears immediately in the tree as a child of the Workload Deployer server, but with no state or status.

    After a few seconds, the state and status of the Workload Deployer server changes to [Connected, Publishing...] and remains that way while Rational Application Developer publishes the application.

    After a few more seconds, provided publication is successful, the state and status of the Workload Deployer server changes to [Connected, Synchronized], and the state and status of the Webby application appears as [Stopped, Synchronized], as shown in Figure 16.

    Figure 16. The Servers view after adding the application pattern
    The Servers view after adding the application pattern

    The status of "Synchronized" indicates that the virtual application pattern in the Rational Application Developer workspace and on Workload Deployer is in sync with each other. The application state of "Stopped" indicates that Rational Application Developer has published, but not deployed, the virtual application pattern.

Note: You can expand the virtual application pattern to reveal the associated application projects and their constituent modules. However, this is for information purposes only.

Explore the actions available on applications in the servers view

Several actions are available on an application under a Workload Deployer server in the Servers view. If you are familiar with using Rational Application Developer to develop for the WebSphere Application Server, some of the actions look familiar. Others are unique to Workload Deployer applications.

In the Servers view, right-click on the published virtual application pattern to open the context menu and review several of its actions. Do not select any of the actions at this time. Table 2 shows the actions in the context menu of an application under a Workload Deployer server and explains what they do.

Table 2. Workload Deployer application context menu actions
ActionExplanation
Start Deploys the application pattern on Workload Deployer.
Stop Terminates the application instance that was previously deployed from Rational Application Developer.
Restart Restarts a Rational Application Developer deployed application pattern.
Remove Removes an application pattern from Workload Deployer, and is equivalent to using the Add and Remove dialog. If there exists a virtual application instance previously deployed from Rational Application Developer, the instance is terminated.
Reacquire Reacquires an application pattern from Workload Deployer into the Rational Application Developer workspace.
Detach Severs the tie between the application pattern in Rational Application Developer and on Workload Deployer.
Get information Opens a dialog with information about the published or deployed application pattern on Workload Deployer.

Explore the Workload Deployer dashboard

  1. In the Servers view, right-click on the Workload Deployer server and select Launch Dashboard. Depending upon your preferred browser under Window > Web Browser, Rational Application Developer may open the Workload Deployer dashboard in the Rational Application Developer embedded browser, or in a stand-alone browser.
  2. In the Workload Deployer dashboard, select Patterns > Virtual Applications.
  3. Under Virtual Application Patterns, select Web Application Pattern Type 2.0 if it is not already selected as shown in Figure 17.
    Figure 17. Virtual application patterns
    Virtual application patterns
  4. Beneath Web Application Pattern Type 2.0 is a list of application patterns. Confirm that "Webby" appears in the list.

    Note: The other applications in the list may differ from what is shown here.

  5. Select Webby to review the details of the virtual application pattern.
  6. From the list of actions for the Webby application pattern as shown in Figure 18, click Open to open the Virtual Application Builder.
    Figure 18. Virtual application patterns actions
    Virtual application patterns actions

    Depending upon your preferred browser, the Virtual Application Builder opens in a new browser tab or a new browser window.

  7. Select the Web Application component located in the upper left corner of the Virtual Application Builder canvas. The name of the component, "Web Application", may be obscured by an Add policy for application control. Optionally, drag the component away from the corner of the canvas to reveal its name.
  8. In the properties pane for the component, observe that the WAR File field is defined with the name of a WAR file artifact as shown in Figure 19.
    Figure 19. The Web Application component
    The Web Application component
  9. Close the Virtual Application Builder. If the browser asks you to confirm leaving the tab or window, do so. Leave the Workload Deployer dashboard open.

Part 5. Creating application patterns in Workload Deployer

In the previous two parts of the tutorial, you created a skeletal application pattern in Rational Application Developer and published it to Workload Deployer. While this is a convenient way to quickly wrap a new application pattern around existing projects in your workspace, it is more common to create application patterns in Workload Deployer with the full power of the Virtual Application Builder.

In this part of the tutorial, you create a new web application pattern in Workload Deployer.

Create an application pattern with the Virtual Application Builder

  1. In the Workload Deployer dashboard under Virtual Application Patterns, click the New button to open the Create Application dialog and begin creating a new application pattern.
  2. In the Create Application dialog, select Web Application Pattern Type 2.0.
  3. Select Blank Application.
  4. Click Start Building. After a few moments, the Virtual Application Builder opens.
  5. In the Virtual Application Builder, under the Assets pane, expand Application Components if it is not already expanded.
  6. Drag and drop the Web Application component from the Assets pane onto the canvas as shown in Figure 20.
    Figure 20. Creating a new Web Application Component
    Creating a new Web Application Component
  7. In the properties pane for the new component, observe the WAR File field is blank. Leave it and the other controls as they are.
  8. Click Save to open the Save Application dialog.
  9. In the Name field, replace any default text by the name of AjaxHelloWeb.
  10. Click OK.
  11. Close the Virtual Application Builder. Leave the Workload Deployer dashboard open.

Part 6. Acquiring application patterns into Rational Application Developer

Just as publishing an application pattern created in Rational Application Developer to Workload Deployer establishes a link between the pattern in your workspace and the pattern on Workload Deployer, so does acquiring an application pattern created in Workload Deployer into Rational Application Developer. Publication and acquisition also have the effect of synchronizing the application pattern between Rational Application Developer and Workload Deployer. The pivotal difference is in the direction of the synchronization.

  1. When you publish or republish an application pattern from Rational Application Developer to Workload Deployer, the application pattern model and its artifacts are updated with content from the Rational Application Developer workspace.
  2. When you acquire or reacquire an application pattern into Rational Application Developer from Workload Deployer, the application pattern model in Rational Application Developer is updated with content from Workload Deployer.

    Note: Unlike for publication, Rational Application Developer does not support the acquisition of component artifacts. It only supports the acquisition of the application pattern model.

    In this part of the tutorial, you acquire the application you created in Part 5. Creating application patterns in Workload Deployer into Rational Application Developer.

Acquire the application pattern into Rational Application Developer

  1. In Rational Application Developer, in the Servers view, right-click on the Workload Deployer server and select Acquire Cloud Application to open the Acquire Cloud Application wizard.
  2. Click Perform query.

    A progress dialog appears for a few moments while Rational Application Developer retrieves from Workload Deployer the list of virtual application patterns you are permitted to read. The application you created in the previous part of the tutorial, AjaxHelloWeb, appears near the top of the list of Cloud Applications.

  3. Select AjaxHelloWeb : application from the list as shown in Figure 21.
    Figure 21. Querying application patterns
    Querying application patterns
  4. Click Next.
  5. Under "Select a project", select the Cloud apps project.
  6. In the File name field, replace appmodel.json with the name AjaxHelloWeb.json.
  7. Click Next.
  8. Observe that a Web Application component of type WAR appears is in the table of associations, but without an associated project location as shown in Figure 22. Ordinarily, this is a good opportunity to associate workspace projects to components. However, for the purposes of this tutorial, leave the component without an associated project for now.
    Figure 22. An unassociated component
    An unassociated component
  9. Click Finish.
  10. In the Servers view, observe that the AjaxHelloWeb application has appeared as a new child of the Workload Deployer server.

Identify and correct the validation warning

The Rational Application Developer tools for Workload Deployer include a validator that detects a small number of significant warning and error conditions. Near the end of the previous set of steps, you did not associate a project to the Web Application component. As an example, one of the conditions the validator detects is the presence of components of types recognized by Rational Application Developer that do not have associated projects.

  1. In Rational Application Developer, select the Problems view.
  2. Expand Warnings as shown in Figure 23.
    Figure 23. The Problems view
    The Problems view
  3. Near the top of the list of warnings, you see a warning for the AjaxHelloWeb.json resource that reads: Component Web Application does not have an association.

    Explanation: Rational Application Developer is calling to your attention that you have a component without an associated project. In practice, this may indicate a problem, or it may not. For example, if one of your colleagues is responsible for providing the associated project, then it is likely you neither have nor need the project in your workspace and you can ignore the warning.

  4. In the Enterprise Explorer view, under Cloud apps > applicationModels, right-click on AjaxHelloWeb.json and select Associate Application Model to open the Associate Application Model dialog.
  5. In the table of associations, select component Web Application. Notice the associated project location field is still blank.
  6. Click Edit to open the Edit Association dialog.
  7. The dialog should show you the three Web projects in your workspace as shown in Figure 24. Select project AjaxHello_WEB.
    Figure 24. Associating a project
    Associating a project
  8. Click OK to return to the Associate Application Model dialog. Notice the associated project location field now shows the associated project location, AjaxHello_WEB.
  9. Click OK to apply the association and close the dialog.
  10. In the Problems view, confirm that the validation warning has vanished.
  11. By associating a project with a component, you have effectively changed the application pattern and should publish the change to Workload Deployer so that Rational Application Developer and Workload Deployer are in sync. In the Servers view, right-click on the Workload Deployer server and select Publish.

Rational Application Developer dispatches a background job to export and publish the updated virtual application pattern to Workload Deployer. After a few moments, the publication job completes normally, and the state and status of the AjaxHelloWeb virtual application pattern change to [Stopped, Synchronized].


Part 7. Changing application patterns

After you have published an application pattern, it is available in the Workload Deployer storehouse for you and possibly others to access or update. For example, you may use the Virtual Application Builder to wire components together or configure policies. A teammate may acquire your application pattern into another Rational Application Developer workspace, then publish updates back to the pattern in the storehouse. Because the development of application patterns and their components is shared between Rational Application Developer and Workload Deployer, Rational Application Developer includes a few features to help keep application patterns synchronized between the Rational Application Developer workspace and the Workload Deployer storehouse.

In this part of the tutorial, you edit the application pattern that you created in Part 5. Creating application patterns in Workload Deployer, detect the change from Rational Application Developer, then reacquire the application pattern into the Rational Application Developer workspace to bring it into sync with the pattern on Workload Deployer.

Edit the application pattern with the Virtual Application Builder

  1. In the Workload Deployer dashboard, under Virtual Application Patterns, click the Refresh button to refresh the list of patterns. AjaxHelloWeb appears in the list.
  2. Select AjaxHelloWeb.
  3. Click Open to open the application in the Virtual Application Builder.
  4. In the Virtual Application Builder, under the Assets pane, expand OSGi Components if it is not already expanded.
  5. Drag and drop the OSGi Application component from the Assets pane onto the canvas as shown in Figure 25.
    Figure 25. Creating a new OSGi Application component
    Creating a new OSGi Application component
  6. In the properties pane for the new component, observe the EBA File field is blank. Leave it and the other controls as they are.
  7. Click Save.

Detect and reacquire the change from within Rational Application Developer

By default, Rational Application Developer checks every 60 seconds for changes to published or acquired virtual application patterns, but you can change or disable this interval, or manually initiate a check.

Note: Rational Application Developer V8.0.4 does not detect changes to the component artifacts of an application pattern.

  1. In Rational Application Developer, in the Servers view, right-click on the Workload Deployer server and select Check Application Synchronization to have Rational Application Developer check the corresponding application pattern on Workload Deployer for any changes.
  2. Once the operation completes, the state and status of the Workload Deployer server and the AjaxHelloWeb application pattern changes to [Stopped, Reacquire].

    The status of Reacquire (Figure 26) indicates that the virtual application pattern has changed in some way on Workload Deployer since the last time it was synchronized with (for example, published from or acquired into) Rational Application Developer. We recommend that you reacquire the application pattern into Rational Application Developer to get it back into sync.

    Figure 26. The Reacquire status
    The Reacquire status
  3. In the Servers view, right-click on AjaxHelloWeb and select Reacquire to open the Reacquire Application and Association wizard as shown in Figure 27.
    Figure 27. Reacquiring an application pattern
    Reacquiring an application pattern

    The wizard detects two components in the virtual application pattern:

    • Component Web Application existed in Rational Application Developer before, and remains associated to project AjaxHello_WEB.
    • Component OSGi Application is new to Rational Application Developer, and does not yet have an associated project.
  4. Select OSGi Application.
  5. Click Edit to open the Edit Association dialog. The dialog shows all available OSGi application projects in your workspace. There should be only one: HelloWorld.app.
  6. Select HelloWorld.app.
  7. Click OK to return to the Reacquire Cloud Application Wizard.
  8. Click Finish.

Republish the application pattern

Like at the end of Part 6. Acquiring application patterns into Rational Application Developer, you have just associated a workspace project to a component, effectively changing the application pattern. Therefore, publish the application pattern with the newly associated OSGi application project back to Workload Deployer.

  1. In the Servers view, right-click on the Workload Deployer server and select Publish.

    Rational Application Developer dispatches a background job to export and publish the updated virtual application pattern to Workload Deployer. After a few moments, the publication job completes normally, and the state and status of the AjaxHelloWeb virtual application pattern change to [Stopped, Synchronized].

  2. In the Workload Deployer dashboard, under Virtual Application Patterns, select AjaxHelloWeb.
  3. Click the Open button to open the application in the Virtual Application Builder.
  4. Due to the publication process from Rational Application Developer, both components of the application pattern (Web Application and OSGi Application) may have been relocated to the upper left corner of the canvas. Drag them away from the corner, and from each other, to better reveal their details.
  5. Select component OSGi Application if it is not already selected.
  6. In the properties pane, observe that the EBA File field now has a value.
  7. Close the Virtual Application Builder without saving.

Part 8. Deploying application pattern instances

In Workload Deployer, if a virtual application pattern is like the blueprint for an application workload, then a virtual application instance is the completed house. Up to this point in the tutorial, you have used Rational Application Developer and Workload Deployer to work with virtual application patterns. The distinction between the pattern and the instance of the pattern is expressed in Rational Application Developer in terms of the actions you can take.

In this part of the tutorial, you deploy (or start, or run) the AjaxHelloWeb virtual application pattern, resulting in the creation on Workload Deployer of a virtual application instance.

Deploy an application

In Rational Application Developer, in the Servers view, right-click on AjaxHelloWeb and select Start.

Rational Application Developer dispatches an operation to Workload Deployer to deploy a new virtual application instance from the virtual application pattern. This operation takes several minutes to complete while Workload Deployer provisions and configures the virtual application instance and supporting middleware (see Figure 28). After deployment completes normally, the state and status of the AjaxHelloWeb virtual application pattern should change to [Started, Synchronized].

Figure 28. Deployment progress
Deployment process

Test the application

  1. In the Servers view, right-click on AjaxHelloWeb and select Get Information to open the Cloud Application Information Dialog as shown in Figure 29.
    Figure 29. The Information dialog
    The Information dialog

    It may take a moment for the dialog to open while Rational Application Developer retrieves information about the published and deployed application from Workload Deployer.

    The dialog is divided into two sections. The Application section has information about the published virtual application pattern. The Deployment section has information about the deployed virtual application instance, if any.

    The Application section shows the name, unique identifier, pattern type, description of the virtual application pattern, and information about the creation and most recent update to the pattern.

    The Deployment section shows the name, unique identifier, status, and creation details of the virtual application instance. Depending on the nature of the components deployed with the pattern, various application endpoint URLs may be listed. Because AjaxHelloWeb includes a WAR component, one of the endpoints is the root of the resulting Web application.

    Note: You can also open the dialog for virtual application patterns that have not been deployed (such as in the stopped state), in which case the Deployment section of the dialog is intentionally left blank.

  2. In the Cloud Application Information dialog, click on the endpoint URL in the form http://.../AjaxHello_WEB/. Rational Application Developer opens your preferred browser on the endpoint, showing you the index.html page of the AjaxHello_WEB application as shown in Figure 30.
    Figure 30. The Web application sample
    The Web application sample
  3. In Rational Application Developer, click OK to close the Cloud Application Information dialog. Leave the browser open.

Part 9. Updating the source code

In this part of the tutorial, you make a normal change to a normal source file, then publish the change to Workload Deployer.

Change the application

  1. In Rational Application Developer, in the Enterprise Explorer, expand and right-click on AjaxHello_WEB > WebContent > index.html and select Open to open the Page Designer as shown in Figure 31.
    Figure 31. Editing the Web application
    Editing the Web application
  2. In the Page Designer, make a change to any visible aspect of the HTML page.

    For example, delete the first couple words of the title (Ajax: Hello!), then select the remaining title text and press Ctrl-i to apply italics.

  3. Select File > Save or press Ctrl-s to save your changes.
  4. In the Rational Application Developer servers view, confirm the state and status of AjaxHelloWeb changes to [Started, Republish].
  5. Right-click on the Workload Deployer server and select Publish.

    Rational Application Developer dispatches operations to Workload Deployer to update Web Application component of the virtual application pattern and the deployed virtual application instance. This takes several seconds to complete, although the capacity of your cloud hardware pool has a bearing on how rapidly the update operations complete. On completion, the state and status of AjaxHelloWeb changes to [Started, Synchronized].

  6. In the browser, refresh the Web page for the AjaxHelloWeb application, and confirm that your changes to the title text appear.

Part 10. Detaching and removing applications

In this part of the tutorial, you detach one of the published applications, remove the other application, and observe the effects on Rational Application Developer and Workload Deployer.

Detach an application

  1. In Rational Application Developer, in the Servers view, right click on AjaxHelloWeb and select Detach.
  2. Confirm AjaxHelloWeb vanishes from the Servers view. Only the Webby virtual application pattern remains.

Remove an application

  1. In the servers view, right click on Webby and select Remove.
  2. Confirm Webby vanishes from the Servers view.

Review the Workload Deployer dashboard

  1. In the Workload Deployer dashboard main menu, select Patterns > Virtual Applications.
  2. Confirm that AjaxHelloWeb is in the list of virtual application patterns.
  3. Confirm that Webby is not in the list of virtual application patterns.

Remove AjaxHelloWeb from Workload Deployer

  1. In the Workload Deployer dashboard main menu, select Instances > Virtual Applications.
  2. Select AjaxHelloWeb.
  3. Click the Stop button to stop the virtual application instance. If asked to confirm, click Yes.

The status of the instance changes from "Running" to "Terminating" and remains that way for a few minutes while Workload Deployer dismantles the virtual application instance.

  1. Once the status changes from "Terminating" to "Terminated", click the Delete button to delete the virtual application instance. If asked to confirm, click Yes.
  2. In the Workload Deployer dashboard main menu, select Patterns > Virtual Applications.
  3. Under Virtual Application Instances, select AjaxHelloWeb.
  4. Click the Delete button to delete the virtual application pattern. If asked to confirm, click Yes.

Part 11. Exporting and importing application patterns

In the normal course of developing and unit testing your application pattern, you publish and deploy your application pattern to Workload Deployer using the Rational Application Developer server tools. From time to time, you may need to extract a copy of your application pattern out of your workspace and onto your local file system for some other purpose. For example, you may need to email an application pattern archive to a colleague, or you may need to store an application pattern archive in a definitive software library such as Rational Asset Manager, or you may need to import the application pattern into Workload Deployer via its dashboard or command line interface (CLI).

If you are the recipient of an application pattern archive, you can use the corresponding import wizard to bring a copy of the pattern into your workspace.

In this part of the tutorial, you experiment with exporting and importing application patterns.

Export an application pattern

  1. In Rational Application Developer, in the Enterprise Explorer, expand and right-click on Cloud apps > applicationModels > AjaxHelloWeb.json and select Export to open the Export wizard.
  2. Select Cloud Application > Cloud Application.
  3. Click Next to proceed to the Export cloud application to the filesystem page.
  4. Confirm the Application Model field is set to the workspace path name of AjaxHelloWeb.json as shown in Figure 32.
    Figure 32. The Export wizard
    The Export wizard
  5. In the list of application model artifacts, confirm that the four resources are shown and are all checked.
  6. Select the Archive file radio button.
  7. In the Archive file field, enter an absolute path name of the archive file to be created by the Export wizard, such as C:\AjaxHelloWeb.zip.
  8. Click Finish.
  9. As appropriate for your operating system, use a command prompt, shell, file system explorer, or equivalent utility to confirm that the AjaxHelloWeb.zip archive file was successfully created and contains the following resources:
    • appmodel.json
    • .appmodel.json
    • artifacts/HelloWorld.app.eba
    • artifacts/AjaxHello_WEB.war

Import an application pattern

It is unusual to import a virtual application pattern into the same workspace from which it was exported. The Import wizard raises various errors as files and projects within the archive to be imported collide with existing files and projects in the workspace. In this section of the tutorial, you open a new Rational Application Developer workspace and import into it the virtual application pattern archive that you exported above.

  1. From the Rational Application Developer main menu, select File > Switch Workspace > Other to open the Workspace Launcher dialog.
  2. In the Workspace field of the dialog, enter a path name of a new workspace.
  3. Click OK. The current Rational Application Developer window closes. After a few moments, a new Rational Application Developer window opens.
  4. If the Welcome view appears, close it.
  5. Start a second instance of Rational Application Developer. For example, on Windows, select Start > Programs > IBM Software Delivery Platform > Rational Application Developer 8.0 > Rational Application Developer.
  6. In the Workspace Launcher dialog, in the Workspace field, enter a different path name of a new workspace that you entered in Part 1. Getting started, then click OK.
  7. Close the Welcome view.
  8. From the Rational Application Developer main menu, select File > New > Project to open the New Project wizard.
  9. Select General > Project.
  10. Click Next.
  11. In the Project name field, enter Cloud apps.
  12. Click Finish.
  13. In the Enterprise Explorer, right-click on project Cloud apps and select Properties to open the Properties for Cloud apps dialog.
  14. Select Project Facets.
  15. Select Convert to faceted form.
  16. In the list of project facets, check the IBM Workload Deployer Application facet.
  17. Click OK to close the Properties for Cloud apps dialog.
  18. Right-click on project Cloud apps and select New > Folder.
  19. In the Folder name field, enter applicationModels. Click OK.
  20. Right-click on project Cloud apps and select Import.
  21. From the Rational Application Developer main menu, select File > Import to open the Import wizard as shown in Figure 33.
    Figure 33. The Import wizard
    The Import wizard
  22. Select Cloud Application > Cloud Application.
  23. Click Next to proceed to the next page of the wizard.
  24. Select the Select archive file radio button. In the associated field, enter the absolute path name of the archive file you exported earlier in this part of the tutorial, for example, C:\AjaxHelloWeb.zip.
  25. In the Project name field, select project Cloud apps.
  26. In the Application file name field, enter AjaxHelloWeb.json.
  27. In the Target runtime field, select WebSphere Application Server v7.0.
  28. Components Web Application and OSGi Application appear in the table of components and are checked by default.
  29. Click Finish. The Import wizard spends a few moments importing the virtual application pattern, including the enterprise projects that its components are associated to.

Part 12. Exploring preferences

In this part of the tutorial, you review the preferences in Rational Application Developer for customizing the behavior of the Workload Deployer tools.

Explore the Workload Deployer Preferences

  1. From the Rational Application Developer main menu, select Window > Preferences to open the Preferences dialog .
  2. Select Workload Deployer.
  3. Explore the available preferences as shown in Figure 34.
    Figure 34. The Preferences page
    The Preferences page

    In the General settings section, you can change the default project relative folder in which virtual application model JSON files are stored. You can also change the default search filter used by the Acquire Cloud Application wizard.

    In the Server settings and Time-outs sections, you can change several default values used when creating new Workload Deployer server configurations with the New Server wizard.

    In the Import and Export settings section, you can change default values used by the Import Cloud Application and Export Cloud Application wizards.


Conclusion

In this tutorial, you learned how to use Rational Application Developer together with IBM Workload Deployer to develop virtual application patterns. You learned how to create and manage Workload Deployer servers, then use a combination of the Virtual Application Builder in Workload Deployer and the wizards and editors of Rational Application Developer to work with virtual application patterns, their components, and the projects and source code that implement them. All the tools in IBM Rational Application Developer that work with Workload Deployer also work with IBM PureApplication System.

Resources

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into WebSphere on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=WebSphere, Rational, Cloud computing, DevOps
ArticleID=809006
ArticleTitle=Preparing for IBM PureApplication System, Part 5: Developing virtual application patterns for IBM Workload Deployer with Rational Application Developer
publish-date=04112012