This documentation is not maintained. Please refer to doc.castsoftware.com/technologies to find the latest updates.


Summary: This document provides basic information about the extension providing support for analyzing JEE applications (via the JEE Analyzer) that use the IBM EAD4J Jade framework.

Extension ID

com.castsoftware.ead4j

What's new?

Please see IBM EAD4J Jade - 1.0 - Release Notes for more information.

In what situation should you install this extension?

If your JEE application source code uses the IBM EAD4J Jade framework you should install this extension.

This extension creates EAD4J.JADE Operation objects which represent entry-points for web services. For each operation, an Operation object of type Any is created (this can receive all kinds of HTTP requests). For example:

Application configuration

In the "web.xml" file, the extension takes into account only servlets pointing to a class which inherits directly (or not) from com.ibm.ead4j.jade.servlet.JadeGatewayServlet. The servlet mapping (url-pattern) is identified. For example:

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">

...
  <servlet>
    <display-name>InitialSAMLaunchServlet</display-name>
    <servlet-name>InitialSAMLaunchServlet</servlet-name>
    <servlet-class>com.att.uam.ui.jade.servlet.InitialSamLaunchServlet</servlet-class>
  </servlet>
...
  <servlet-mapping>
    <servlet-name>InitialSAMLaunchServlet</servlet-name>
    <url-pattern>/InitialSAMGateway</url-pattern>
  </servlet-mapping>

....
</web-app>

The following files are taken into account:

application-config.xml

The name of the file is not important, but it must contain the "/appl-config" xpath. This file also contains the application name and the URL to access the application:

<appl-config>
	<appl>
		<appl-name>euam</appl-name>
		<appl-codebase>/euam</appl-codebase>
	</appl>
</appl-config>

actionHandler.xml

The name of the file is not important, but it must contain the "/actionHandler-config" xpath:

  • actionHandler-name is the part of the url after "jadeAction=". See following example screenshot.
  • actionHandler-class is the class whose method will be called.
<actionHandler-config>
	<actionHandler>
		<actionHandler-name>ADD_ADDITIONAL_LANGUAGE_ACTION_HANDLER</actionHandler-name>
		<actionHandler-class>com.att.uam.ui.jade.action.AddAdditionalLanguageActionHandler</actionHandler-class>

	</actionHandler>
</actionHandler-config>

Click to enlarge:

Application analysis

The extension will take into account:

  • Actions inheriting from com.ibm.ead4j.jade.action.AbstractActionHandler (actionHandler.xml)
  • Servlets inheriting from com.ibm.ead4j.jade.servlet.JadeGatewayServlet (web.xml)

Operation creation

  • The application-config.xml file provides the application url which will be the start of the operation url (in the examples above this is "/euam").
  • In actionHandler.xml, provides the jadeAction parameter url part (in the examples above this is "/euam?jadeAction=ADD_ADDITIONAL_LANGUAGE_ACTION_HANDLER"), with the associated class (in the examples above this is "com.att.uam.ui.jade.action.AddAdditionalLanguageActionHandler").
  • In web.xml, provides the url mapping. The extension retains the mappings corresponding to classes inheriting from com.ibm.ead4j.jade.servlet.JadeGatewayServlet. You will see this mapping when tapping the F12 key when any CAST_EAD4J_Operation object is selected in CAST Enlighten.

The class is taken into account if it inherits from com.ibm.ead4j.jade.action.AbstractActionHandler (directly or not), and the method whose return type is "com.ibm.ead4j.jade.bean.ResultBean" (in the examples above this is execute_startAction) will be selected.

public class AddAdditionalLanguageActionHandler extends StartTaskActionHandler{

	public ResultBean execute_startAction(ResultHandler handler, Parameters params, JadeSession jadeSession)
			throws ProcessException, ResultBeanException 
	{
...
	}
}

A callLink is created from the operation to the method.

Supported IBM EAD4J Jade framework items

  • Actions inheriting from com.ibm.ead4j.jade.action.AbstractActionHandler (actionHandler.xml)
  • Servlets inheriting from com.ibm.ead4j.jade.servlet.JadeGatewayServlet (web.xml)

Function Point, Quality and Sizing support

This extension provides the following support:

  • Function Points (transactions): a green tick indicates that OMG Function Point counting and Transaction Risk Index are supported
  • Quality and Sizing: a green tick indicates that CAST can measure size and that a minimum set of Quality Rules exist
Function Points
(transactions)
Quality and Sizing
(tick)(error)

CAST AIP compatibility

This extension is compatible with:

CAST AIP release

Supported

8.3.x(tick)
8.2.x(tick)

Supported DBMS servers

This extension is compatible with the following DBMS servers:

CSSOracleMicrosoft
(tick)(error)(error)

Prerequisites

(tick)An installation of any compatible release of CAST AIP (see table above)

Dependencies with other extensions

Some CAST extensions require the presence of other CAST extensions in order to function correctly. The IBM EAD4J Jade extension requires that the following other CAST extensions are also installed:

Note that:

  • when using the CAST Extension Downloader to download the extension and the Manage Extensions interface in CAST Server Manager to install the extension, any dependent extensions are automatically downloaded and installed for you. You do not need to do anything.
  • the JEE Analyzer is not a dependency, but since this extension is always installed with AIP, you do not need to do anything.

Download and installation instructions

Please see:

The latest release status of this extension can be seen when downloading it from the CAST Extend server.

CAST Transaction Configuration Center (TCC) setup

If you are using the extension with CAST AIP ≥ 8.3.x, an IBM EAD4J specific setup is automatically imported when the extension is installed. These items will be available in the CAST Transaction Configuration Center:

Manual import action for CAST AIP ≤ 8.2.x

If you are using the extensions with CAST AIP ≤ 8.2.x, you can manually import the TCC setup, should you want to:

Show me how to do this...
  • Locate the .TCCSetup file in the extension folder: Configuration\TCC\Base_EAD4J.TCCSetup

  • In the CAST Transaction Configuration Center, ensure you have selected the Templates node:

  • This .TCCSetup file is to be imported into the CAST Transaction Calibration Center using either the:

    • File > Import Configuration menu option:

    • Or right clicking on the Template node and selecting Import Configuration:

  • The import of the "Base_EAD4J.TCCSetup" file will provide you with a sample Transaction Entry point in the Free Definition node under Templates:

  • You can now re-use the definitions in any Applications you are working in the CAST Transaction Configuration Center.

Packaging, delivering and analyzing your source code

Once the extension is installed, no further configuration changes are required before you can package your source code and run an analysis. The process of packaging, delivering and analyzing your source code does not change in any way:

  • Package and deliver your application.
  • Analyze your delivered application source code.

Note that if your EAD4J.JADE resources (i.e. the configuration XML files) are present in a folder outside the WebContent folder, then following the packaging action in the CAST Delivery Manager Tool, you should investigate the corresponding JEE analysis units in the CAST Management Studio - check that in the Source Settings > Resources tab that there is an "include" entry in the "XML" section that points to a folder containing your resources:

Click to enlarge:

What results can you expect?

Objects

The following objects are displayed in CAST Enlighten:

IconDescription

EAD4J.JADE Operation