Summary: This section describes the predefined Environment Profiles supplied with the extension and the custom Environment Profiles that can be created where required.
Environment Profiles are a set of predefined (by CAST) or custom configuration settings that can be included in an analysis:
Predefined Environment Profiles
CAST provides a number of predefined Environment Profiles in the JEE Analyzer extension that can be included in an analysis. These predefined Environment Profiles are designed to address specific recurrent issues during analysis (for example, configuration settings for the Spring Framework, or common-logging for Java).
Predefined Environment Profiles are applied to analyses automatically by the extension, depending on the technology options you choose, whether at default level or at Application or Analysis Unit level. For example, the options Java Version / JDK used to compile this application and Frameworks will determine which predefined Environment Profiles are applied (it is not possible to modify these pre-defined profiles):
Available predefined Environment Profiles
|Profile||Active by default||Content||Limitation||Comments|
|CICS Calls||Parameterization for cicseci-126.96.36.199.jar and ctgclient-188.8.131.52.jar in CICS archives. This profile targets CICS calls.|
|You need to create a specific profile that will reference these archives.||Only contains parametrization.|
|common-logging 1.1||Contains the archive common-logging version 1.1 (http://jakarta.apache.org/commons/logging/) and related parameterization. Commons-logging.||-||-|
|Default Parametrization & Migrated Parametrization||Contains default parameterization options.||-||Will automatically be used.|
Migrated Parametrization will be used on an Analysis Service that has been migrated.
Default Parametrization will be used on newly created Analysis Services.
|Dom4j 1.6.1||Contains the archive Dom4j version 1.6.1 (http://jakarta.apache.org/commons/logging/) and related parametrization. Required when the Dom4j framework is used in your application.||-||Objects from the analysis of Dom4j jar files are not saved to the CAST Analysis Service.|
|EJB 2.0, 2.1||Contains the archive EJB API. (http://java.sun.com/products/ejb/) Required when the EJB framework is used in your application.||-||Takes advantage of the XQuery/Zorba extraction method.|
|EJB 3.0, 3.1, 3.2||-||-||-|
|J2EE 1.2, 1.3, 1.4||Parameterization for J2EE 1.2, 1.3, 1.4 (http://www.oracle.com/technetwork/java/javaee/overview/index.html).||-||-|
|J2SE 1.1, 1.2, 1.3 and 1.4 JRE||References the JSE JRE (http://www.oracle.com/technetwork/java/javase/overview/index.html) from the registry and its associated parameterization.||-||-|
|JEE 5.0, 6.0, 7.0||Parameterization JEE 5.0, 6.0, 7.0 (http://www.oracle.com/technetwork/java/javaee/overview/index.html).|
This profile is required when you face applications or a framework that involves Servlets.
|Hibernate 2.1.7||Contains the archive Hibernate 2.1.7 (http://www.hibernate.org/) and the related parameterization of the external API.||-||-|
|JPA 1.0 (Hibernate 3.1)||Contains the archive Hibernate 3.1 (http://www.hibernate.org/) and the related parameterization of the external API.||-||-|
|JPA 1.0 (Hibernate 3.2 - 3.5)||Contains the archive Hibernate 3.2 - 3.5 (http://www.hibernate.org/) and the related parameterization of the external API.||When the orm.xml redefines the name of the JPA entity associated to the same class, there will be two JPA entities created one from the name given by the annotation and one from the name given by the orm.xml.||Hibernate 3.2 is the first Hibernate version to use Annotations.|
|JPA 2.0 (Hibernate 3.6 - 4.2)||Contains the archive Hibernate 3.6 - 4.2 (http://www.hibernate.org/) and the related parameterization of the external API.||-||-|
|JPA 2.1 (Hibernate 4.3 - 5.x)||Contains the archive Hibernate 4.3 - 5.x (http://www.hibernate.org/) and the related parameterization of the external API.|
|JSE 5.0, 6.0, 7.0, 8.0 JRE||References the JSE 5.0 - 8.0 JRE (http://www.oracle.com/technetwork/java/javase/overview/index.html) from the registry and its associated parameterization.|
|JSF 1.2, 2.2||Contains the JSF-API archive (http://java.sun.com/javaee/javaserverfaces/) and its associated parameterization.||-||-|
|JUnit 3.8.2||Contains the JUnit archive (http://www.junit.org/index.htm) and its related parameterization.||-||-|
|Log4j 1.2.14||Contains the Log4j archive version 1.2.14 (http://logging.apache.org/log4j/docs/) and its associated parameterization.||-||Configuration files for Log4j are ignored during analysis.|
|Mx4j 3.0.2||Contains the Mx4j archive version 3.0.2 (http://mx4j.sourceforge.net/) and its associated parameterization.||-||-|
|Spring Framework 1.2.8||Contains the Spring archive version 1.2.8 (http://www.springframework.org/) and its associated parameterization.||Spring bean properties are not created. Instead a link is created between the bean and the bean corresponding to the property.||-|
|Spring Framework 2.x||Contains the Spring archive version 2.x (http://www.springframework.org/) and its associated parameterization.||Spring beans are not linked to all their subbeans. In addition, they are not linked to Java methods (constructor, factory, etc.)||Takes advantage of the XQuery/Zorba extraction method.|
|Spring Framework 3.x||Contains the Spring archive version 3.x (http://www.springframework.org/) and its associated parameterization.||-||-|
|Spring Framework 4.x||Contains the Spring archive version 4.x (http://www.springframework.org/) and its associated parameterization.||-||-|
|Struts 1.0, 1.1, 2.0, 2.5||Contains the Struts archive version 1.0 (http://struts.apache.org/) and its associated parameterization.|
This profile is required for the analysis of application that involves Struts 1.0
|XML to ignore||Contains XML Configuration files that will be excluded from the analysis.||-||Configuration files specified in this profile will be ignored during the analysis.|
Custom Environment Profiles
A custom Environment Profile can be particularly useful where you have several Analysis Units (for example a large project that has been split) that rely on the same specific settings. By creating a custom Environment Profile that defines these settings, you avoid having to configure each Analysis Unit with the same settings - instead you simply include the custom Environment Profile at Application or Analysis Unit level using the Custom Environment Profile option. When the analysis is run, the settings in the Environment Profile are taken into account.
For the JEE Analyzer extension, it is possible to create Environment Profiles as follows:
- Definition of Class Paths
- Method Parametrization
- Java Annotations
- XML File Configuration
See the following pages for more information:
Enabling custom Environment Profiles
Use the following options in the Analysis tab at Application/Analysis Unit level to select a custom Environment Profile you have created (click to enlarge):
Managing custom Environment Profiles
If you want to create new custom Environment Profiles, you need to use the Environment Profile Manager. This can be accessed from the Analysis tab in the Application or Analysis Unit:
The Profile Manager will then launch:
- The left hand section displays a collapsible list of any Predefined or existing Custom Environment Profiles listed by technology, then by profile name. If this the first time you have used the Environment Profile dialog box, then this section will only contain the CAST AIP predefined profiles - they will be grayed out. If you have already created profiles then you can expand the list and select the profile you want to modify or delete.
- The right hand section provides the means to define new profiles and get access to existing profiles for modification and deletion purposes.