You are on page 1of 22

English

Sign in (or r

Technical topics

Evaluation software

Community

Events

Customizing WebSphere Business Space V6.2 Human Management widgets


How to display customized business data in human tasks or processes lists using query tables Jose A Martinez Rodriguez (joseamr@us.ibm.com), Software Engineer, IBM Summary: Learn how to add and display business data in a human tasks list by customizing your WebSphere Process Server V6.2 Feature Pack Human Management widgets for Business Space. Along the way, you will be guided to create query tables using the Query Table Builder, and to modify and display additional business data. Date: 24 Feb 2010 Level: Intermediate PDF: A4 and LetterGet Adobe Reader Activity: 5373 views Comments: 0 (View | Add comment - Sign in) Average rating (5 votes) Rate this article Introduction WebSphere Process Server (hereafter called Process Server) includes Business Space powered by WebSphere, which provides a common interface for application users to create, manage, and integrate Web interfaces across the IBM WebSphere Business Process Management (BPM) portfolio. Business Space is a browser-based graphical user interface that lets business users customize content from products in the WebSphere BPM portfolio. Business users use Business Space widgets deployed on Process Server to fulfill their day-to-day work items. Business users can also customize Business Space widgets to view the runtime business data according to their preferences. Business Space administrators can create new spaces (collections of pre-configured pages) and mashup page content, in addition to the predefined scenarios that are shipped with Business Space. WebSphere Process Server V6.2 and WebSphere Enterprise Service Bus V6.2 Feature Pack is made up of sets of widgets that you can use with Business Space. The WebSphere products installed determine which sets of widgets you can use. For Process Server, Human Task Management widgets provide a way for business users to easily view, assess, and drill down into human tasks and business processes in the business process management solution. My Work Organizer widgets, which will be the focus of this article, enable business users to quickly plan and organize their tasks. Query tables support task and process list queries on data that is contained in the Business Process Choreographer (BPC) database schema. This includes human task data and business process data that are managed by Process Server and external business data. Query tables provide an abstraction on the data of BPC that can be used by client applications. Query table definitions are deployed on BPC containers and are accessible using the query table API. See WebSphere Process Server V6.2 Information Center: Query tables in Business Process Choreographer for more information. There are three types of query tables: predefined query tables, supplemental query tables, and composite query tables. Supplemental and composite query tables in BPC are developed during application development using the Query Table Builder. Predefined query tables cannot be developed or deployed. They are available when BPC is installed and provide a simple view of the artifacts in the BPC database schema. Previously to the query table APIs, the BPC list APIs were used (and still can be used) to query data. They are not considered here in this article. The Query Table Builder is available as an Eclipse plug-in. You can download it from the WebSphere Business Process Management SupportPacs site at PA71 - WebSphere Process Server - Query Table Builder plugin download. This article will go through the steps to add custom business data to the human tasks list. The steps relate to a simple application

sample of a business process that is explained in detail. However, we do not pretend to build a sample in this article. You can perform identical steps to add custom business data to the processes list, human task definitions list, and process definitions list. The only step that is different is at the time of creating the query table and selecting the type, which is mentioned in the corresponding section of this article.

Prerequisites You need to install and configure the following products and fix packs: WebSphere Process ServerV6.2.0.1 or later Business Space: Check for detailed information about how to configure Business Space at Configuring Business Space in the Information Center. WebSphere Integration Developer V6.2.0.1 or later: This is the tooling platform to create query tables. Alternatively, the developer can install SupportPac PA71 in an Eclipse distribution. For more details, see Query Table Builder SupportPac PA71 Getting Started document. WebSphere Process Server V6.2 and WebSphere Enterprise Service Bus V6.2 Feature Pack: This feature pack is made up of sets of widgets that you can use with Business Space, like Human Task Management widgets, which provide a way for business users to easily view, assess, and drill down into human tasks and business processes in the business process management solution. SupportPac PA71: WebSphere Process Server - Query Table Builder V1.2 or later: This SupportPac provides the Query Table Builder, a tooling in the form of an Eclipse plugin and the documentation that is necessary to develop and work with BPC query tables. For the remaining part of the article, we assume that the Query Table Builder is installed in WebSphere Integration Developer. Knowledge of BPC queries and query tables is desirable. You also need to be familiar with WebSphere Process Server V6.2 Feature Pack and how to create new business spaces.

Out-of-the-box capabilities of WebSphere Process Server Feature Pack WebSphere Process Server V6.2 Feature Pack provides a set of Human Task Management widgets that help Business Space users to easily view and work with human tasks and business processes. The tasks and processes lists that are displayed in this set of widgets do not provide a default or configurable view of additional business data that might be necessary for the business user. The business user can select the properties for the information that he wants the widget to display in a particular tasks list. He can also change the order in which the information is displayed in the widget. While the data displayed by the out-of-the box widgets is important for the business user, he might be interested in other related information. For example, this can be data available in the task input data, or in the context of the business process the task belongs to. To display this kind of information, you need to customize the Business Space widgets. This article explains how to do this using query tables. The first step for customization is to determine which additional business data must be displayed to the business user. A solution developer which has this list of additional business data can now implement ways to retrieve and display this data. This might require changing the application that contains this human task. This will also require creating a query table. We will take a look at what type of information is displayed by default in the tasks and processes lists in the Human Task Management widgets. Then, we will guide you through the steps to create customized tasks lists that will display additional business data relevant to your business users. We will also look at other modifications a developer needs to perform in the business process so the lists can show business data from it. We will use a basic sample application. Application overview The sample application consists of a simple business process that receives a travel request. A human task inside the business process gets invoked so a manager can approve or reject the travel request and send the notification back to the travel request originator (Figure 1). Figure 1. Travel Approval Business Process

The data model consists of one business object, TravelRequest, with several attributes holding information about the travel request such as customer name, purpose of the travel, locations, dates, traveler, and so on (Figure 2). There is one additional attribute that will hold the status of the request, which is approved or rejected. Figure 2. Travel Request business object

There are fields from the TravelRequest business object that are relevant to the business users. Those fields need to be displayed in the tasks and processes list: CustomerName, ResourceName, FromLocation, ToLocation, FromDate, ToDate, Airfare, HotelCost, and CarRentalCost. It is important to have a clear understanding from the beginning of what the business users need to display before the developer starts his work. Depending on the number of process instances, having a large number of query properties can lead to performance issues with complex queries. Our interface has a single request-response operation, SendRequest, with input and output both of type of TravelRequest, as shown in Figure 3. Figure 3. TravelRequest interface

Out-of-the-box (or built-in) Business Space widgets We created a new business space from one of the templates that the WebSphere Process Server V6.2 Feature Pack provides out-ofthe-box for Human Task Management. We will show the high level steps to create a business space. 1. Once you are logged in into Business Space Manager, click the icon to create a new Business Space, as shown in Figure 4. Figure 4. Create new Business Space

2. The Create New Business Space window pops up. Select from one of the new templates that is provided by the Feature Pack, Advanced Managing of Human Tasks and Workflows. Figure 5 shows the name of the new Business Space as Travel Approval Sample. Figure 5. Choosing a Business Space template

The new business space is created and business users see the new business space pages that have been created as part of it: My Work, Organize Work, Create Tasks, Manage Human Workflows, and Manage Human Tasks (Figure 6). Figure 6. Travel Approval Business Space sample

You can see in Figure 7 how the default view of the newly created Travel Approval Sample Business Space looks like. You see the default tasks list All tasks in the Tasks List widget and the default authorization filter Task I Own and Available Tasks. There is no option or drop-down list to change the Tasks List since this is the only list deployed at the moment. You will see a dropdown list of Tasks Lists separated from the authorization filter drop-down list once you create and deploy new query tables that directly correlate to the Tasks Lists. An editor or administrator can additionally configure different aspects of the Tasks List through the Tasks List Menu, including what lists to display by default or which ones you want to allow the business user to display. The properties to be displayed for every task list can also be selected. We will explore these features in the Customization section. Figure 7. Travel Approval Business Space

You can see how tasks are displayed in the default All tasks tasks list in Figure 8 after you started one instance of the TravelApprovalProcess business process. You also see the default displayed properties for the tasks list: Name, Priority, Due time, Start date, Pending, and Description. All those properties are business data displayed out-of-the-box, but they are not relevant for the business scenario example. Therefore, we want to display the necessary business data mentioned in the Application overview section. Figure 8. Out-of-the-box business data

Editors or administrators can configure how the tasks list is displayed by clicking the Tasks List Menu (Figure 7) and then Configure. They will see the list of properties that can be selected to get displayed and in what order (Figure 9). Figure 9. Selecting which properties to display

Customizing the task lists You have just seen that, by default, it is not possible to show any additional business data that might be necessary to the business user through the out-of-the-box tasks list. For instance, it is not possible to display Customer Name and other fields that were described in the Application overview section. To do that, the developer needs to do a few things: First, he needs to modify the business process to add the necessary information that will allow the query tables to display the additional business data. Second, he needs to create the query tables that, once deployed in the server, will allow the additional business data to display in the business space. Business process modifications We showed our Travel Approval Business Process early in Figure 1. Let's take a more detailed look into the business process and check the process variables in Figure 10. Figure 10. Process variables

Both process variables, RequestInput and RequestOutput, are of type TravelRequest (see Figure 2). The business data we want to show is received and stored in the variable RequestInput. We mentioned earlier in the Application overview section the additional business data necessary for our examples business users, which we want to display in a tasks list: CustomerName, ResourceName, FromLocation, ToLocation, FromDate, ToDate, Airfare, HotelCost, and CarRentalCost. The developer needs to make those business objects fields (business data) available to the query table. To do that, he needs to create some query properties under the process variable that is holding the business data, such as RequestInput variable in the

sample: 1. You can see the query properties panel if you right-click in the business process variable (RequestInput process variable in our sample), and select Show in Properties (see Figure 11). Figure 11. Selecting the business process variable with additional business data

2. Then select Query properties under the Properties panel (Figure 12). Figure 12. Query Properties panel

3. Add a query property per business object field that you want to show to the business users later on. Give a name to the query property and point to the business object field (Figure 13). Figure 13. Adding a query property

The developer needs to clearly understand from the beginning what to display to the business users before he starts to work. Defining every available property is not recommended for performance, depending on the number of running instances. You can see the query properties added in the sample in Figure 14. Figure 14. Sample query properties

That is all the solution developer needs in the business process. At this point, the administrator can go ahead and deploy the application in WebSphere Process Server. Creating query tables Query tables that are going to be used by Business Space need to fulfill certain criteria (for details, look at Query Table Builder SupportPac PA71 Getting Started). The Query Table Builder provides the option to create a new query explicitly for use in Business Space. This way, the query table will automatically include the correct criteria to be used in Business Space and the developer does not have to worry about it. We created a standard empty project for the sample called Query Table Project as a repository for our query tables, but note that developers can create them in any type of project. 1. To create a standard project, go to File > New > Project. Then select General > Project as seen in Figure 15. Figure 15. Creating a standard empty project

2. After clicking Next, enter the name of the project. In this case, we named it Query Table Project. 3. To work with query tables, the developer needs to switch to the Query Tables perspective in WebSphere Integration Developer. Note that developers need to have Query Table Builder installed for the Query Tables perspective to show (see the Prerequisites section for details). 4. To create a query table definition for the business space, developers need to select File > New > Composite Query Table Definition for Business Space, as seen in Figure 16. Figure 16. Selecting Composite Query Table Definition for Business Space

5. Developers can select the folder they want to save the table in and enter a name for the table. We named it TRAVELAPPROVAL.TASK in the sample, as shown in Figure 17. Figure 17. Creating a query table

6. After clicking Next, developers can select the type of query table they want to create. As mentioned before, since we chose to create a query table for Business Space, the query table will automatically include the correct criteria to be used for display in the Business Space widget. Developers can see in Figure 18 how the different criteria, depending on the kind of query table, are shown in the panel. Since you want to customize a task list in Business Space, which is querying for and displaying a list of human task instances, you need to use the primary table TASK for the query table because this one displays a task instance. 7. If a developer wants to create and customize a Processes List instead of the Tasks List, the process that he would follow is the same except for selecting the kind of query table. Developers would select Processes List instead (Figure 18). It is also possible to create and customize Task Definitions and Process Definitions Lists as seen in Figure 18. Figure 18. Selecting the query table type

8. After clicking Finish, a new composite query table definition is created and shown in the Query Table Builder, as seen in Figure 19.

You can see the primary table for the widget Tasks List, TA (TASK), located in the upper left corner and shown in green (Figure 19). You can see how the query table (shown below in the primary table) contains the required attributes mentioned above, such as STATE, KIND, CONTAINMENT_CTX_ID, and TKTID (Figure 19). Figure 19. New Composite Query Definition table for Business Space

Query table properties If developers click the canvas and go to the Properties view, they can edit the properties of the entire query table. Clicking on Details, developers can change Description and Filter for the entire table as seen in Figure 20. Figure 20. Query Table properties - details

Any of the attributes that are defined in the attributes table are included in the filter. There are several filters that developers can apply within the query tables. See the Information Center topic Filters and selection criteria of query tables. Click Description to add a Display Name and Description per language and you can add multiple languages. For more details, see Query Table Builder - Getting Started. The Display Name is relevant because this is the name that will show up in the Business Space Widget instead of the name of the table (TRAVELAPPROVAL.TASK in our sample). In our case, we added the display name Travel Approval Tasks List as seen in Figure 21. Figure 21. Query Table properties - description

Query Table authorization properties

If you click the primary query table and go to the Properties view, you can edit the authorization properties of the query table plus an additional filter: 1. Click on Details to change Short Name and Filter for the table as seen in Figure 22. For example, you only want to show tasks that someone can work on (for example, state claimed, ready). Additionally, you want to see only the tasks created for the business process example introduced in this article. The filter looks like this:
(STATE=STATE_READY OR STATE=STATE_CLAIMED) AND KIND=KIND_PARTICIPATING AND NAME=TravelApprovalProcess$ManagerApprovalTask.

For detailed information about filters, see the Information Center topic Filters and selection criteria of query tables. Figure 22. Primary Query Table Properties details

2. Click Authorization to change Authorization settings and Filter for the table as seen in Figure 23. For information about authorization settings, see the Information Center topic Authorization for query tables. For performance reasons, the developer needs need to take into account the type of work item. In this example, we considered using group work items instead of individual work items for group members. This typically results in better query performance. For example, if you want to show the tasks list results only to potential owners, specify the following filter, WI.REASON=REASON_POTENTIAL_OWNER, as shown in Figure 23. Figure 23. Primary Query Table properties - authorization

Query table attributes The developer needs to now add the attributes to the query table that represent the business data to display to the business users. You already saw in Figure 19 that the sample query table that was created for Business Space contains some required attributes (STATE, KIND, CONTAINMENT_CTX_ID, and TKTID). Any additional attribute that the developer wants to add needs to have its corresponding query property in the business process, just like the example shown in Figure 14. We are going to show how to add those attributes to the query table through the sample. Before adding customized business data, the developer may want to also display some information about the task itself, like its description. He can find this attribute in the TASK_DESC (task description) predefined table. To add a new attribute to the query table, the developer needs to: 1. Add the table (where the attribute is located) to the canvas. 2. Drag and drop the TASK_DESC table from the list on the left side to the canvas (see the red line in Figure 24). 3. After placing the table TAD (TASK_DESC) in the canvas, drag and drop the attribute DESCRIPTION from the table TAD

to the query table at the bottom (follow the red line in Figure 24). Figure 24. Adding table to the canvas

4. Customize how the attribute is going to be displayed in the tasks list so that it does not display DESCRIPTION all in upper case. 5. Right-click in the DESCRIPTION attribute in the query table and then select Show in Properties. Select Description in the right tab (Figure 25). 6. The developer can enter what he wants to display in the Display Name field, (such as Description as seen in Figure 25). The developer can also enter a description of the attribute that will display when someone hovers over it in the Tasks list in Business Space. Figure 25. Attribute description properties

To display additional business data in the Business Space Widgets, add the corresponding attributes to the query table: 1. Add the QUERY_PROPERTY predefined table to the canvas by dragging it into the canvas from the list on the left side (see the red line in Figure 26). This table is different than the rest, since it holds the query properties (or attributes) representing business data. 2. Elements in the QP (QUERY_PROPERTY) table represent a type of attribute. The developer will select and add the element to the query table according to the type of the business data that he wants to display. This is the type of variable to set up as query property in the business process, as shown in Figure 14. 3. In the example, we want to add the sCustomerName query property corresponding to the variable CustomerName in the business process (see Figure 14). After placing the table QP in the canvas, drag and drop the attribute STRING_VALUE from the table QP to the query table at the bottom (follow the red line in Figure 26) since the variable CustomerName is of String type. 4. There is a yellow box between the primary table TA and the QP table holding the name of the query property you want to add (see the red circle in Figure 26). By default, it is NAME='aName' so you need to change it to the correct name for the query property. Figure 26. Adding query property table to the canvas

5. The developer needs to right-click in the yellow box and select Show in Properties. Then go to the Properties tab and change the name in the Selection Criteria field. In the example, it was changed to NAME='sCustomerName' as seen in Figure 27. The developer now sees how the query property name changes in the yellow box at the same time it is changed in the Selection Criteria field. Figure 27. Adding query property name

6. Most likely, the developer will want to display a descriptive name for this property in the tasks list column when displayed in the Human Task widget. At this point, the column name reads exactly the same as it is shown in the query table column for this particular property. If you look at Figure 28, the column name of the property is STRING_VALUE in the query table. 7. To customize the displayed column name, right-click in the column STRING_VALUE in the query table and select Show in Properties. Click the Description tab and enter Customer Name in the Display Name field, as shown in Figure 28. Figure 28. Changing Display Name of the query property

8. The developer needs to repeat the previous steps for every query property that was added to a business process variable. In the example, repeat the process for all query properties seen in Figure 14. The canvas looks like Figure 29 (cropped due to the size). Figure 29. Canvas with all the query properties

9. Once the developer has finished creating the query table in the query table builder, he needs to deloy it into the server. Query table test The Query Table Builder provides a test client for deploying and testing a query table definition file on a local WebSphere Process Server V6.2 (and only on a local one, not in any other kind of Process Server deployment). We are going to show it here only as reference. If you need more information about it, see Section 2.4, Deploying and testing the query table, in Query Table Builder SupportPac PA71 - Getting Started. To bring up the query table test client: 1. Go the Query Table Perspective, right-click the file of the table you want to test (in our case, it is TRAVELAPPROVAL.TASK.qtd). 2. Select Test on local WebSphere Process Server. The test client is the easiest and fastest way to test in a local server to WebSphere Integration Developer. You can deploy, update, undeploy, and test the query by just clicking a button as seen in Figure 30. As mentioned above, the problem is that developers can only use it against a local process server environment. If they have different environments that are remote to the test client or clustered environments, they need to use the available administrative Jython scripts to perform any administrative work with the query tables. Query tables need to be deployed by the administrator using the manageQueryTable.py Jython script. One of the test client features is a console that displays all command line and output information so developers can see how the Jython script is being invoked and the output as if they were using just the command line. Figure 30. Query Table Test client

Query table deployment Let's explore basic functionality of the Jython script to deploy or undeploy query tables. Developers first need to export the query table files to deploy them into a clustered or remote environment. A query table definition consists of three types of files: .qtd: The query table definition itself without language dependent content. .qtdex: This is used to store layout information in Eclipse, not used at runtime. .properties files: This is one or more files containing language dependent content. Depending on the Process Server version and what they want to do, developers may need a different combination of those files at the time of export. For complete and detailed information, check the section Exporting and importing query table definitions in Query Table Builder SupportPac PA71 Getting Started. Starting in Process Server v6.2.0.1, administrators may deploy more than one query table definition at once by exporting all the .qtd and .properties files in a single jar file. To export the files: 1. Right-click Query Tables Project (or any of the files inside) and select Export. 2. Choose the Query Tables Export wizard under Business Process Choreographer, as seen in Figure 31. Figure 31. Selecting Query Tables Export wizard

3. Developers can select files they want to export and add to the jar file, as seen in Figure 32. In the sample, select to export the TRAVELAPPROVAL.TASK.qtd and .properties files. Figure 32. Query Tables Export wizard

4. Once finished with exporting the files, the administrator needs to deploy them using the manageQueryTable.py script. The following command is just provided as a sample that we used to deploy the sample composite travel approval query table in a Process Server clustered environment in Linux OS. We run the sample command from the deployment manager profile directory on the deployment manager:
./wsadmin.sh -f

../../../ProcessChoreographer/admin/manageQueryTable.py -cluster GoldenTopology_1.AppTarget -deploy /tmp/travelapprovalQueryTables.jar

5. The following command is just provided as a sample that we used to update a deployed query table in the Process Server clustered environment. We run the following command from the deployment manager node:
./wsadmin.sh -f ../../../ProcessChoreographer/admin/manageQueryTable.py -cluster GoldenTopology_1.AppTarget -update definition /tmp/travelapprovalQueryTables.jar

For detailed script information about query table administration, see the Information Center topic Administering query tables. Displaying your own task lists in the widget Once an administrator has deployed query tables to Process Server, he needs to make the corresponding tasks list (or processes list) available via Business Space and customize how it is displayed. For the sample, we created a new Business Space Travel Approval Sample, based on the template Advanced Managing of Human Tasks and Workflows, which is provided with the WebSphere Process Server v6.2 Feature Pack. You can see in Figure 33 how the default widget of the previous business space looks like. Notice that the default Tasks List All tasks Tasks I Own and Available Tasks does not display any customized business data, but general information about the task, such as name, priority, due time, the start date for this task, if it's pending, and the description. Figure 33. Advanced management of Human Tasks and Workflows Business Space

Through the following steps, we show the tasks list (query table) introduced in this example instead of the default one. These steps need to be performed by an editor or administrator and cannot be performed by a regular viewer or user: 1. The editor or administrator clicks the drop-down menu of Tasks List (marked by a red circle in Figure 34) and selects Configure. Figure 34. Tasks List Configure

2. The editor or administrator clicks the drop-down menu Select task list to display and selects Add task lists, as seen in Figure 35. Figure 35. Selecting Tasks List to display

3. A list of available tasks lists will show up. The editor or administrator selects the list or lists that he wants business users to have available to select in the business space. Once he has selected the one that he wants displayed as the default, he clicks the Set as default button. The whole check box will become a block instead of only a check mark. See how the tasks list from the example is selected in Figure 36. Figure 36. Selecting Tasks Lists to be available to business users

4. After this, the editor or administrator may want to choose which properties to display for this task list. A list with all the properties available for the task list is shown. This list includes all the additional business data properties or attributes that was included in the task list, such as Customer Name, Traveler Name, and so on. The editor or administrator may check or uncheck the fields that he wants to show in the tasks list, and then clicks OK. Figure 37 shows the unchecked fields that we are not interested in. Figure 37. Selecting which properties to display for the selected task list

5. The Tasks List will now show the additional business data that we wanted to display, as shown in Figure 38. Figure 38. Sample Tasks List displaying additional business data

Conclusion This article provided steps that developers, editors, and administrators need to follow to display additional business data in Tasks Lists within Business Space Human Management widgets. The same process can be followed to display customized Processes List, Task Definitions List, and Process Definitions Lists. The only difference is choosing the type of query table as seen in Figure 18.

Acknowledgments The author would like to thank Susan Herrmann and Andreas Wickenhaeuser for reviewing the article and providing valuable comments. Resources Learn WebSphere Process Server V6.2 Information Center: Query tables in Business Process Choreographer WebSphere Process Server V6.2 Information Center: Administering query tables WebSphere Process Server V6.2 and WebSphere Enterprise Service Bus V6.2 Feature Pack Information Center Query Table Builder SupportPac PA71: Getting Started Business Process Management samples and tutorials: Query Tables and Query Table Builder

SupportPac PA71: WebSphere Process Server - Query Table Builder plugin download Discuss WebSphere Process Server discussion forum About the author

Jose A. Martinez Rodriguez is currently a member of the WebSphere Process Server SWAT team and focuses on customer engagements. Prior to his current role, he was a software developer with the WebSphere Process Server development team. Close [x]

developerWorks: Sign in
If you don't have an IBM ID and password, register here. IBM ID: Forgot your IBM ID? Password: Forgot your password? Change your password After sign in: Stay on the current page Keep me signed in.

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


Submit Cancel

The first time you sign into developerWorks, a profile is created for you. Select information in your developerWorks profile is displayed to the public, but you may edit the information at any time. Your first name, last name (unless you choose to hide them), and display name will accompany the content that you post. All information submitted is secure. Close [x]

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. Display name: (Must be between 3 31 characters.)

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

Submit

Cancel

All information submitted is secure. Average rating (5 votes) 1 star 2 stars 3 stars 4 stars 5 stars
Submit

1 star 2 stars 3 stars 4 stars 5 stars

Add comment: Sign in or register to leave a comment. Note: HTML elements are not supported within comments.

Notify me when a comment is added1000 characters left


Post

Be the first to add a comment


Print this page Share this page Follow developerWorks

Technical topics
AIX and UNIX IBM i Information Management Lotus Rational Tivoli WebSphere Cloud computing Industries Integrated Service Management Java technology Linux Open source SOA and web services Web development XML

Evaluation software
By IBM product By evaluation method By industry

Community
Forums Groups Blogs Wikis Terms of use Report abuse IBM Champion program

About developerWorks
Site help and feedback Contacts Article submissions

IBM
Solutions Software Software se Support Product info Redbooks Privacy Accessibility

Events
Briefings Webcasts Find events

Related resources
Students and faculty Business Partners

More...

More...

You might also like