The following information can be used to help troubleshoot errors that occur when registering the 6.0.1 Lifecycle LDX application in Jazz Team Server (JTS).

Here are errors that are thrown as a result of LDX application registering due to wrong custom property value set in IBM WebSphere Application Server (WAS).

Browser Web Page

Error Message: java.lang.IllegalArgumentException: currentVersion can not be null Error Code: 500 Target Servlet: ApplicationAboutServlet Error Stack: java.lang.IllegalArgumentException: currentVersion can not be null
at com.ibm.team.jis.lqe.maintenance.upgrade.VersionUtil. toDisplayString(VersionUtil.java:91) at com.ibm.team.jis.lqe.ApplicationAboutServlet.doGet
(ApplicationAboutServlet.java:62) at javax.servlet.http.HttpServlet.service(HttpServlet.java:575) at javax.servlet.http.HttpServlet.service(HttpServlet.java:668)

WAS (systemout.log)

ServletWrappe E com.ibm.ws.webcontainer.servlet.ServletWrapper service SRVE0068E: An exception was thrown by one of the service methods of the servlet [/WEB-INF/web/fragments/common-scripts.jsp] in application [ldx.war]. Exception created : [java.lang.IllegalArgumentException: currentVersion can not be null at com.ibm.team.jis.lqe.maintenance.upgrade.VersionUtil.toDisplayString(VersionUtil.java:91)
at com.ibm._jsp._common_2D_scripts._jspService(_common_2D_scripts.java:173) at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:99

How do we find that Link Index Provider and Lifecycle Query Engine included an incorrect custom property value for WebSphere Application Server deployments?

Often times, as part of performance testing, you might be involved in considering various factors such as what ports are getting involved when the traffic communications are being captured by IBM Rational Performance Tester (RPT).

Say, for example...

You need to generate the load from different zones which are classified on your environment network. RPT Work bench will be in Zone-1 and Playback Agents will be in Zone-2. Assuming that there also exists a network firewall between the zones. Because of the high security concerns, before opening the ports for the communication, you are informed to know the communication method and protocols used between RPT Workbench and Load agent machines.

By default, there are a couple of default ports which are specified from RPT perspective such as...

So, as an evidence to showcase whether RPT is using the secure / unsecure communication between Workbench machine and Load Agent, you could use a utility such as Wireshark to run the trace for the following use-case.

The traffic between agents and workbench is HTTP. Run Wireshark in the workbench while an agent is in contact with it.

While Wireshark is capturing traffic in the workbench, start a schedule and then stop it after say a minute.

Once schedule is stopped, stop capturing Wireshark and then filter for port 7080. That should give you the complete traffic between the agent and workbench

In certain cases, when you invoke the application under test (AUT) via RPT's built-in HTTP recorder, the AUT might not display the page or rather the page elements. It’s quite obvious that if the AUT is trying to communicate over secured network (HTTPS), there might be various parameters like:

What's the Cipher Strength used?

What are the client and server certificates involved?

.................. and so on, which can contribute such behavior.

It could also be a case where you have to check which TLS versions are supported by the AUT. The TLS (Transport Layer Security) protocol is responsible for the authentication and key exchange necessary to establish or resume secure sessions. During a secured connection establishment, the following is managed.

Cipher suite negotiation

Authentication of the server and optionally, the client

Session key information exchange.

For Example:

You may access an application via a browser interface and notice that the application requires some certificate to be downloaded and tries to communicate via some TLS versions (Sample snapshot shown below).

But in some cases even though the traffic communicates over unsecured mode and smaller cipher strength (112 bit keys as shown in above snapshot), the AUT does show blank page when accessed via RPT's HTTP recorder. An ideal way to handle such situation is to disable the higher values of TLS specification within the RPT's recorder window during the recording course and check if the AUT shows up loading of all page contents.

Unable to check the status of the check boxes present in a Grid DataWindow control in PowerBuilder (PB) application using RFT.

Requirement is to check the status of the check boxes present in a Grid DataWindow control in PowerBuilder (PB) application using IBM Rational Functional Tester (RFT).

While working with RFT and PowerBuilder application, you would have noticed that the object recognition is different for Powerbuilder controls, depending on the value set for the flag rational.test.ft.pb.datawindow.freeform.usenewproxyonly in ivory.properties file which is located in the bin folder of RFT installation Directory '\SDP\FunctionalTester\bin'

When the flag rational.test.ft.pb.datawindow.freeform.usenewproxyonly is set as 'false', then RFT is able to recognize all the rows from the Grid DataWindow control.

Then the regular find() method (code snippet has been given below) would help to check the status of the check boxes present in Grid DataWindow control.

When the flag rational.test.ft.pb.datawindow.freeform.usenewproxyonly is set as 'true' to get a better playback performance, then, RFT is unable to recognize all the rows from the Grid DataWindow, instead it can recognize only the first row from the control. Hence the above code snippet would retrieve only the status of the check box present in the first row.

In the scenario, the below code snippet helps to check the status of the check boxes (this code snippet can be used when the flag as set as 'false' as well).

Disclaimer:
ALL SOURCE CODE AND/OR BINARIES ATTACHED TO THIS DOCUMENT ARE PROVIDED "AS IS," WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT OF PATENTS, COPYRIGHTS OR OTHER PROPRIETARY RIGHTS OF OTHERS. NEITHER THE AUTHOR NOR IBM WARRANT THAT THE FUNCTIONS, ROUTINES, AND DATA CONTAINED IN, OR GENERATED AS A RESULT OF THE DOWNLOAD(S), WILL MEET YOUR REQUIREMENTS OR BE ERROR-FREE. The entire risk related to the quality and performance of the download(s) is with you. In the event that there is any defect, you assume the entire cost of all necessary services, repair or correction. IN NO EVENT WILL THE AUTHOR OR IBM BE LIABLE TO YOU OR TO ANY THIRD PARTY FOR ANY DIRECT OR INDIRECT DAMAGES (INCLUDING, WITHOUT LIMITATION, LOST PROFITS, LOST SAVINGS OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES) ARISING OUT OF THE USE OR INABILITY TO USE THE DOWNLOAD(S), EVEN IF THE AUTHOR OR IBM HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. Some jurisdictions do not allow the exclusion of implied warranties or the limitation or exclusion of liability for incidental or consequential damages, so some of the above may not apply to you."

...and for any of our followers who may have been born on February 29th : HAPPY BIRTHDAY to you!

Now on to the videos....

Rational Team Concert, Rational ClearCase, and Cadence Virtuoso – a 3 part series

A new 3 part series of videos was recently published. The videos discuss the environment of the Solution for Electronic Design and how you can use IBM Rational Team Concert (RTC) and IBM Rational ClearCase to implement a Change and Configuration Management (CCM) environment to track library cell components in the Cadence Virtuoso Library Manager environment.

The following new white paper has been published for Rational Performance Tester (RPE). In this paper our very own Anu Chalu Parambil provides information about the various license models offered for using Rational Performance Tester in emulating your load tests. There are various license types offered when you purchase RPT. This white paper intends to help you differentiate and guide you to configure the licenses available in your offering for your performance test.

For web issues observed on IBM Collaborative Lifecycle Management (CLM) applications Rational Team Concert (RTC), and Rational Quality Manager (RQM) you may need to download and use Fiddler Web Debugger to capture network traffic. Find some helpful steps below that will guide you through the install and help isolate specific session information.

While working with GUI testing, you may come across text, which is painted in an HTML canvas. If you try to record or use a verification point (VP) with this text, IBM Rational Functional Tester (RFT) fails to identify this.

For instance, you have a web page as below and trying to verify the text "Big Smile " :

RFT identifies the Document, but not the text.

Let us have a look at the DOM model of this page, you could use Firebug on Mozilla Firefox or Developer tools on Microsoft Internet Explorer. You will see the below DOM model of the page:

You could see clearly that, text is part of Canvas element and a message that it is HTML 5 tag (you can ignore other parts of the message about the browser support for HTML 5 as it is not relevant for this blog). HTML 5 is not yet supported by RFT. Refer to this RFE: RFT Support for HTML5

However, you may have the question, how do we know if Canvas or any other HTML element is part of HTML5 (if the DOM model does not mention this explicitly)?

Well, you could manually check the HTML standard document by W3. Verify that the found element canvas or other controls is HTML 5, in case you can find that canvas was added as new element in HTML 5: HTML5 Differences from HTML4

It may be interesting to know if a common timeline for all project area's in IBM Collaborative Lifecycle Management tool is possible.

The production level scenario is that a team has Requirements Management (RNDG), Configuration & Change Management (CCM) and Quality management (RQM) activities, using LPA. But the fact is that you have to create separate timeline/iteration schedule for all 3 project areas, and then remember to update all copies whenever you would make a change. This can be of tedious if your development activities demand timelines for all 3 phases to be the same.

Now let me take you through the current behavior of timeline/iteration usage in all 3 components for IBM Collaborative Lifecycle Management (CLM).

Requirements Management using Rational DOORS Next Generation (RNDG) :

There is no support for timelines in RDNG.
RDNG does however have the concept of baselines that can be used to snapshot the state of artifacts, and with the introduction of DNG 6.0, there is now support for configuration management
You might want to take a look here for the new configuration management support: Administering configurations