8 Configuring the Domain for a Java EE Agent
- Creating the Database Schemas
Before you can configure an Oracle Data Integrator domain, you must create the Master and Work Repository (ODI_REPO
) schemas on a certified database for use with this release of Oracle Fusion Middleware. - Generating a Template for a Java EE Agent
Use the Server Template Generation wizard to generate the non-default template for deploying a Java EE agent defined in the ODI master repository. - Creating an Agent in the Master Repository with ODI Studio
A physical agent corresponds to a single standalone agent or a Java EE agent and should have a unique name in the topology. You create an ODI agent in the master repository with ODI Studio. - Configuring the Domain
Use the Configuration Wizard to create and configure a domain. - Adding Libraries to a Java EE Agent
After configuring a Java EE agent, you can specify additional libraries if required. - Starting the Servers
After configuration is complete, start Node Manager, then the WebLogic Administration Server and Managed Servers. - Verifying the Configuration
After completing all configuration steps, you can perform additional steps to verify that your domain is properly configured. - Add Proxy Configuration for JEE Agent
You can add proxy configuration for JEE agent.
Creating the Database Schemas
Before you can configure an Oracle Data Integrator domain, you must create the Master and Work Repository (ODI_REPO
) schemas on a certified database for use with this release of Oracle Fusion Middleware.
Follow the instructions in Creating the Master and Work Repository Schemas to create the required schemas.
Parent topic: Configuring the Domain for a Java EE Agent
Generating a Template for a Java EE Agent
Use the Server Template Generation wizard to generate the non-default template for deploying a Java EE agent defined in the ODI master repository.
Parent topic: Configuring the Domain for a Java EE Agent
Creating an Agent in the Master Repository with ODI Studio
A physical agent corresponds to a single standalone agent or a Java EE agent and should have a unique name in the topology. You create an ODI agent in the master repository with ODI Studio.
As part of its startup sequence, an agent connects to the master repository to verify that there is a physical agent defined in the master repositpry with its name. If it finds its entry, the agent continues with startup and, once started, it reads all the scheduled jobs of itself from the repository and starts processing them. If it does not find a physical agent entry for an agent, then the startup fails.
To create a physical agent in the master repository with ODI Studio:
Parent topic: Configuring the Domain for a Java EE Agent
Configuring the Domain
Use the Configuration Wizard to create and configure a domain.
For information on other methods to create domains, see Additional Tools for Creating, Extending, and Managing WebLogic Domains in Creating WebLogic Domains Using the Configuration Wizard.
- Starting the Configuration Wizard
Start the Configuration Wizard to begin configuring a domain. - Navigating the Configuration Wizard Screens to Create and Configure the Domain
Enter required information in the Configuration Wizard screens to create and configure the domain for the topology.
Parent topic: Configuring the Domain for a Java EE Agent
Starting the Configuration Wizard
Start the Configuration Wizard to begin configuring a domain.
To start the Configuration Wizard:
Parent topic: Configuring the Domain
Navigating the Configuration Wizard Screens to Create and Configure the Domain
Enter required information in the Configuration Wizard screens to create and configure the domain for the topology.
Note:
You can use this procedure to extend an existing domain. If your needs do not match the instructions in the procedure, be sure to make your selections accordingly, or see the supporting documentation for more details.
- Selecting the Domain Type and Domain Home Location
Use the Configuration Type screen to select a Domain home directory location, optimally outside the Oracle home directory. - Selecting the Configuration Template
Use the Templates screen to select the templates you require. - Selecting the Application Home Location
Use the Application Location screen to select the location to store applications associated with your domain, also known as the Application home directory. - Configuring the Administrator Account
Use the Administrator Account screen to specify the user name and password for the default WebLogic Administrator account for the domain. - Specifying the Domain Mode and JDK
Use the Domain Mode and JDK screen to specify the domain mode and Java Development Kit (JDK). - Specifying the Database Configuration Type
Use the Database Configuration type screen to specify details about the database and database schema. - Specifying JDBC Component Schema Information
Use the JDBC Component Schema screen to verify or specify details about the database schemas. - Testing the JDBC Connections
Use the JDBC Component Schema Test screen to test the data source connections. - Creating Credential Keys
Use the Credentials screen to create two keys. - Selecting Advanced Configuration
Use the Advanced Configuration screen to complete the domain configuration. - Configuring the Administration Server Listen Address
Use the Administration Server screen to select the IP address of the host. - Configuring Node Manager
Use the Node Manager screen to select the type of Node Manager you want to configure, along with the Node Manager credentials. - Configuring Managed Servers for Oracle Data Integrator
Use the Managed Servers screen to configure Managed Servers. - Configuring a Cluster for Oracle Data Integrator
Use the Clusters screen to create a new cluster. - Defining Server Templates
If you are creating dynamic clusters for a high availability setup, use the Server Templates screen to define one or more server templates for domain. - Configuring Dynamic Servers
If you are creating dynamic clusters for a high availability setup, use the Dynamic Servers screen to configure the dynamic servers. - Assigning Oracle Data Integrator Managed Servers to the Cluster
Use the Assign Servers to Clusters screen to assign Managed Servers to a new configured cluster. A configured cluster is a cluster you configure manually. You do not use this screen if you are configuring a dynamic cluster, a cluster that contains one or more generated server instances that are based on a server template. - Configuring Coherence Clusters
Use the Coherence Clusters screen to configure the Coherence cluster. - Creating a New Oracle Data Integrator Machine
Use the Machines screen to create new machines in the domain. A machine is required so that Node Manager can start and stop servers. - Assigning Servers to Oracle Data Integrator Machines
Use the Assign Servers to Machines screen to assign the Administration Server and Managed Servers to the new machine you just created. - Virtual Targets
If you have a WebLogic Server Multitenant (MT) environment, you use the Virtual Targets screen to add or delete virtual targets. For this installation (not a WebLogic Server MT environment), you do not enter any values; just select Next. - Partitions
The Partitions screen is used to configure partitions for virtual targets in WebLogic Server Multitenant (MT) environments. Select Next without selecting any options. - Reviewing Your Configuration Specifications and Configuring the Domain
The Configuration Summary screen shows detailed configuration information for the domain you are about to create. - Writing Down Your Domain Home and Administration Server URL
The End of Configuration screen shows information about the domain you just configured.
Parent topic: Configuring the Domain
Selecting the Domain Type and Domain Home Location
Use the Configuration Type screen to select a Domain home directory location, optimally outside the Oracle home directory.
To specify the Domain type and Domain home directory:
- On the Configuration Type screen, select Create a new domain.
- In the Domain Location field, specify your Domain home directory.
For more details about this screen, see Configuration Type in Creating WebLogic Domains Using the Configuration Wizard.
Selecting the Configuration Template
Use the Templates screen to select the templates you require.
On the Templates screen, select the following template:
-
Oracle Enterprise Manager Plug-in for ODI
Selecting this template automatically selects the following as dependencies:
-
Oracle Enterprise Manager
-
Oracle JRF
-
WebLogic Coherence Cluster Extension
-
-
Oracle Data Integrator - Agent
Selecting this template automatically selects the following as dependencies:
-
Oracle Data Integrator - Agent Libraries
-
Oracle Data Integrator SDK Shared Library Template
In addition, select the following templates:-
Oracle Data Integrator - JRF Async Web Services
-
Oracle Data Integrator - REST Services
-
-
Oracle Data Integrator - Console
For more information about this screen, see Templates in Creating WebLogic Domains Using the Configuration Wizard.
Selecting the Application Home Location
Use the Application Location screen to select the location to store applications associated with your domain, also known as the Application home directory.
Oracle recommends that you locate your Application home in accordance with the directory structure in What Are the Key Oracle Fusion Middleware Directories? in Understanding Oracle Fusion Middleware, where the Application home is located outside the Oracle home directory. This directory structure helps avoid issues when you need to upgrade or re-install your software.
For more about the Application home directory, see About the Application Home Directory.
For more information about this screen, see Application Location in Creating WebLogic Domains Using the Configuration Wizard.
Configuring the Administrator Account
Use the Administrator Account screen to specify the user name and password for the default WebLogic Administrator account for the domain.
Oracle recommends that you make a note of the user name and password that you enter on this screen; you need these credentials later to boot and connect to the domain's Administration Server.
Specifying the Domain Mode and JDK
Use the Domain Mode and JDK screen to specify the domain mode and Java Development Kit (JDK).
On the Domain Mode and JDK screen:
-
Select Production in the Domain Mode field.
-
Select the Oracle HotSpot JDK in the JDK field.
Specifying the Database Configuration Type
Use the Database Configuration type screen to specify details about the database and database schema.
On the Database Configuration type screen, select RCU Data. This option instructs the Configuration Wizard to connect to the database and Service Table (STB) schema to automatically retrieve schema information for schemas needed to configure the domain.
Note:
If you select Manual Configuration on this screen, you must manually fill in parameters for your schema on the next screen.
After selecting RCU Data, specify details in the following fields:
Field | Description |
---|---|
DBMS/Service |
Enter the database DBMS name, or service name if you selected a service type driver. Example: |
Host Name |
Enter the name of the server hosting the database. Example: |
Port |
Enter the port number on which the database listens. Example: |
Schema Owner Schema Password |
Enter the username and password for connecting to the database's Service Table schema. This is the schema username and password entered for the Service Table component on the Schema Passwords screen in the RCU (see Specifying Schema Passwords). The default username is |
Click Get RCU Configuration when you finish specifying the database connection information. The following output in the Connection Result Log indicates that the operation succeeded:
Connecting to the database server...OK Retrieving schema data from database server...OK Binding local schema components with retrieved data...OK Successfully Done.
For more information about the schema installed when the RCU is run, see About the Service Table Schema in Creating Schemas with the Repository Creation Utility.
See Database Configuration Type in Creating WebLogic Domains Using the Configuration Wizard .
Specifying JDBC Component Schema Information
Use the JDBC Component Schema screen to verify or specify details about the database schemas.
Verify that the values populated on the JDBC Component Schema screen are correct for all schemas. If you selected RCU Data on the previous screen, the schema table should already be populated appropriately.
For high availability environments, see the following sections in High Availability Guide for additional information on configuring data sources for Oracle RAC databases:
See JDBC Component Schema in Creating WebLogic Domains Using the Configuration Wizard for more details about this screen.
Testing the JDBC Connections
Use the JDBC Component Schema Test screen to test the data source connections.
A green check mark in the Status column indicates a successful test. If you encounter any issues, see the error message in the Connection Result Log section of the screen, fix the problem, then try to test the connection again.
By default, the schema password for each schema component is the password you specified while creating your schemas. If you want different passwords for different schema components, manually edit them in the previous screen (JDBC Component Schema) by entering the password you want in the Schema Password column, against each row. After specifying the passwords, select the check box corresponding to the schemas that you changed the password in and test the connection again.
For more information about this screen, see JDBC Component Schema Test in Creating WebLogic Domains Using the Configuration Wizard.
Creating Credential Keys
Use the Credentials screen to create two keys.
On the Credentials screen:
-
A key for the Supervisor user already exists. Modify the credential as follows:
-
Specify SUPERVISOR (all CAPS) as the user name. This is the default name initially assigned to the SUPERVISOR account and cannot be changed unless you create a new SUPERVISOR account.
-
The password must be the same password specified on the Custom Variables screen in RCU during schema creation.
-
-
Create a second credential:
-
Click the plus sign (+) icon to add a new credential.
-
In the Key Name field, enter the name of this domain as the key.
-
In the Username and Password fields, provide the Administrator user's user name and password.
-
Select
oracle.odi.credmap
as the store name.
-
Note:
If the repository is configured in external authentication mode, then the SUPERVISOR user name and password should be entered according to your external authentication settings.For more information about this screen, see Credentials in Creating WebLogic Domains Using the Configuration Wizard.
Selecting Advanced Configuration
Use the Advanced Configuration screen to complete the domain configuration.
On the Advanced Configuration screen, select:
-
Administration Server
Required to properly configure the listen address of the Administration Server.
-
Node Manager
Required to configure Node Manager.
-
Topology
Required to configure the Oracle Data Integrator Managed Server.
Optionally, select other available options as required for your desired installation environment. The steps in this guide describe a standard installation topology, but you may choose to follow a different path. If your installation requirements extend to additional options outside the scope of this guide, you may be presented with additional screens to configure those options. For information about all Configuration Wizard screens, see Configuration Wizard Screens in Creating WebLogic Domains Using the Configuration Wizard.
Configuring the Administration Server Listen Address
Use the Administration Server screen to select the IP address of the host.
Select the drop-down list next to Listen Address and select the IP address of the host where the Administration Server will reside, or use the system name or DNS name that maps to a single IP address. Do not use All Local Addresses
.
Do not specify any server groups for the Administration Server.
Configuring Node Manager
Use the Node Manager screen to select the type of Node Manager you want to configure, along with the Node Manager credentials.
Select Per Domain Default Location as the Node Manager type, then specify Node Manager credentials.
For more information about this screen, see Node Manager in Creating WebLogic Domains Using the Configuration Wizard.
For more about Node Manager types, see Node Manager Overview in Administering Node Manager for Oracle WebLogic Server.
Configuring Managed Servers for Oracle Data Integrator
Use the Managed Servers screen to configure Managed Servers.
On the Managed Servers screen, a Managed Server named ODI_server1
is automatically created by default.
For more information about this screen, see Managed Servers in Creating WebLogic Domains Using the Configuration Wizard.
Configuring a Cluster for Oracle Data Integrator
Use the Clusters screen to create a new cluster.
On the Clusters screen:
- Click Add.
- Specify
ODI_cluster1
in the Cluster Name field. - Leave the Cluster Address field blank.
By default, server instances in a cluster communicate with one another using unicast. If you want to change your cluster communications to use multicast, see Considerations for Choosing Unicast or Multicast in Administering Clusters for Oracle WebLogic Server.
You can also create clusters using Fusion Middleware Control. In this case, you can configure cluster communication (unicast or multicast) when you create the new cluster. See Create and configure clusters in Oracle WebLogic Server Administration Console Online Help.
For more information about this screen, see Clusters in Creating WebLogic Domains Using the Configuration Wizard.
Defining Server Templates
If you are creating dynamic clusters for a high availability setup, use the Server Templates screen to define one or more server templates for domain.
For steps to create a dynamic cluster for a high availability setup, see Using Dynamic Clusters in High Availability Guide.
Configuring Dynamic Servers
If you are creating dynamic clusters for a high availability setup, use the Dynamic Servers screen to configure the dynamic servers.
If you are not configuring a dynamic cluster, click Next to continue configuring the domain.
Note:
When you create dynamic clusters, keep in mind that after you assign the Machine Name Match Expression, you do not need to create machines for your dynamic cluster.To create a dynamic cluster for a high availability setup, see Using Dynamic Clusters in High Availability Guide.
Assigning Oracle Data Integrator Managed Servers to the Cluster
Use the Assign Servers to Clusters screen to assign Managed Servers to a new configured cluster. A configured cluster is a cluster you configure manually. You do not use this screen if you are configuring a dynamic cluster, a cluster that contains one or more generated server instances that are based on a server template.
For more on configured cluster and dynamic cluster terms, see About Dynamic Clusters in Understanding Oracle WebLogic Server.
On the Assign Servers to Clusters screen:
For more information about this screen, see Assign Servers to Clusters in Creating WebLogic Domains Using the Configuration Wizard.
Configuring Coherence Clusters
Use the Coherence Clusters screen to configure the Coherence cluster.
Leave the default port number as the Coherence cluster listen port. After configuration, the Coherence cluster is automatically added to the domain.
Note:
Setting the unicast listen port to 0
creates an offset for the Managed Server port numbers. The offset is 5000
, meaning the maximum allowed value that you can assign to a Managed Server port number is 60535
, instead of 65535
.
For Coherence licensing information, see Oracle Coherence Products in Licensing Information.
Creating a New Oracle Data Integrator Machine
Use the Machines screen to create new machines in the domain. A machine is required so that Node Manager can start and stop servers.
If you plan to create a high availability environment and know the list of machines your target topology requires, you can follow the instructions in this section to create all the machines at this time. For more about scale out steps, see Optional Scale Out Procedure in High Availability Guide.
Note:
If you are extending an existing domain, you can assign servers to any existing machine. It is not necessary to create a new machine unless your situation requires it.
For more information about this screen, see Machines in Creating WebLogic Domains Using the Configuration Wizard.
Assigning Servers to Oracle Data Integrator Machines
Use the Assign Servers to Machines screen to assign the Administration Server and Managed Servers to the new machine you just created.
On the Assign Servers to Machines screen:
For more information about this screen, see Assign Servers to Machines in Creating WebLogic Domains Using the Configuration Wizard.
Virtual Targets
If you have a WebLogic Server Multitenant (MT) environment, you use the Virtual Targets screen to add or delete virtual targets. For this installation (not a WebLogic Server MT environment), you do not enter any values; just select Next.
For details about this screen, see Virtual Targets in Creating WebLogic Domains Using the Configuration Wizard.
Note:
WebLogic Server Multitenant virtual targets are deprecated in WebLogic Server 12.2.1.4.0 and will be removed in the next release.Partitions
The Partitions screen is used to configure partitions for virtual targets in WebLogic Server Multitenant (MT) environments. Select Next without selecting any options.
For details about options on this screen, see Partitions in Creating WebLogic Domains Using the Configuration Wizard.
Note:
WebLogic Server Multitenant domain partitions are deprecated in WebLogic Server 12.2.1.4.0 and will be removed in the next release.Reviewing Your Configuration Specifications and Configuring the Domain
The Configuration Summary screen shows detailed configuration information for the domain you are about to create.
Review each item on the screen and verify that the information is correct. To make any changes, go back to a screen by clicking the Back button or selecting the screen in the navigation pane. Domain creation does not start until you click Create.
For more details about options on this screen, see Configuration Summary in Creating WebLogic Domains Using the Configuration Wizard.
Writing Down Your Domain Home and Administration Server URL
The End of Configuration screen shows information about the domain you just configured.
Make a note of the following items because you need them later:
-
Domain Location
-
Administration Server URL
You need the domain location to access scripts that start Node Manager and Administration Server, and you need the URL to access the Administration Server.
Click Finish to dismiss the Configuration Wizard.
Adding Libraries to a Java EE Agent
After configuring a Java EE agent, you can specify additional libraries if required.
-
Set the environment variable
ODI_ADDITIONAL_CLASSPATH
to locate additional jars before starting the agent. For example:ODI_ADDITIONAL_CLASSPATH=/share/libs/mytool.jar:/share/libs/drivers/mydriver.jar
-
Do one the following:
- Copy the additional libraries to the
DOMAIN_HOME/lib
directory. The Java EE will automatically add these libaries to the agent’s classpath. -
Follow the steps below to use the
generate_agent_wls_template.sh
script or ODI Studio to generate an agent template and then create/extend a WebLogic domain with that template.
- Copy the additional libraries to the
generate_agent_wls_template.sh
script, specify domain and shared libraries with the -domainLibraries
and -sharedLibraries
arguments as illustrated in the following example:./generate_agent_wls_template.sh
-agentName sample
-agentContextName context
-odiUser SUPERVISOR
-destinationJar /home/userName/NewFormaterJar.jar
-retryCount 10
-retryDelayMS 1
-createDatasourceForMasterRepository false
-masterDataSource jdbc/odiMasterRepository,oracle.jdbc.OracleDriver,jdbc:oracle:thin:@mycompany.com-isESSDependency false
-addToPath /home/userName
-domainLibraries /home/userName/odi/myDomain/userlib/myLib.jar
-sharedLibraries MessageBox
To generate a template for a Java EE agent and specify additional libraries for the agent using ODI Studio:
- Start ODI Studio.
- Select Generate Server Template, to start the Template Generation wizard.
- In the Agent Information page, enter the agent information, such as the Java EE agent name, the datasource JNDI name, the connection retry count, and the Supervisor key.
- In the Libraries and Drivers page, select the libraries you want to deploy with your Java EE agent from the list of external libraries. Note that library name validation is limited within the newly added libraries, not against already deployed shared libraries. You can select a domain library or a shared library. Domain libraries are the libraries deployed in the WebLogic domain and are available to a Java EE agent, since they are available to all applications running in the domain. Domain libraries are typically used when adding infrequently changed JAR files. Note that when using this approach, you must reboot all servers in the domain for the change to take effect. Shared libraries are libraries you specify in the agent deployment descriptor, before deploying the agent to the domain. With shared libraries, multiple applications can use the libraries resources and duplication is avoided. Shared libraries are used for libraries that may need modifications or upgrade. These libraries allow you to change libraries without restarting the server, but you may need to restart the application
- Click Next to display the Datasources page.
- In that page, select the datasource definitions that you want to include in the agent template. You can only select datasources using this wizard. To add datasources use the Data Sources tab.
- Click Next to display the Template Target and Summary page.
- In that page, specify where the template should be generated in the Target Template Path box.
- Click Finish to close the wizard and generate the agent template.
Parent topic: Configuring the Domain for a Java EE Agent
Starting the Servers
After configuration is complete, start Node Manager, then the WebLogic Administration Server and Managed Servers.
For more information on additional tools you can use to manage your domain, see Overview of Oracle Fusion Middleware Administration Tools in Administering Oracle Fusion Middleware.
Parent topic: Configuring the Domain for a Java EE Agent
Starting Node Manager
-
Change to the following directory:
-
(UNIX)
setenv JAVA_HOME /home/Oracle/Java/jdk1.8.0_211
-
(Windows)
set JAVA_HOME=C:\home\Oracle\Java\jdk1.8.0_211
-
-
Enter the following command:
-
(UNIX) Using
nohup
andnm.out
as an example output file:nohup ./startNodeManager.sh >
LOG_DIR
/nm.out&where
LOG_DIR
is the location of directory in which you want to store the log files. -
(Windows)
startNodeManager.cmd
Note:
On Windows operating systems, Oracle recommends that you configure Node Manager to run as a startup service. This allows Node Manager to start up automatically each time the system is restarted.
See Running Node Manager as a Startup Service in Administering Node Manager for Oracle WebLogic Server.
-
Parent topic: Starting the Servers
Starting the Administration Server
-
Change to the following directory:
-
(UNIX)
setenv JAVA_HOME /home/Oracle/Java/jdk1.8.0_211
-
(Windows)
set JAVA_HOME=C:\home\Oracle\Java\jdk1.8.0_211
-
-
Enter the following command:
-
(UNIX)
./startWebLogic.sh
-
(Windows)
startWebLogic.cmd
-
If you selected Production Mode on the Domain Mode and JDK screen when you created the domain, you see a prompt for the Administrator user login credentials as the Administrator Account screen provides.
For more information about starting the Administration Server, see Starting and Stopping Administration Server in Administering Oracle Fusion Middleware.
In production mode, you can create a boot identity file to bypass the need to provide a user name and password when starting the Administration Server. See Creating a Boot Identity File for an Administration Server in Administering Server Startup and Shutdown for Oracle WebLogic Server.
You can verify that the Administration Server is up and running by accessing the Administration Server Console. The URL is provided on the End of Configuration screen (http://administration_server_host:administration_server_port/console
). The default Administration Server port number is 7001
.
Note:
Make sure that the database hosting your product schemas is up and running and accessible by the Administration Server.
For more information about how to use the Administration Console, see Getting Started Using Oracle WebLogic Server Administration Console in Administering Oracle Fusion Middleware.
Parent topic: Starting the Servers
Verifying the Configuration
After completing all configuration steps, you can perform additional steps to verify that your domain is properly configured.
To verify that the domain is configured properly, see Performing Additional Domain Configuration Tasks.
Note:
If your work repository name is other than the default nameWORKREP
, you should edit the value
of the parameter ODI_SECU_WORK_REP to include
the actual work repository name, in the instance.properties
file. This additional configuration is required for both standalone agent and
standalone collocated agent.
Parent topic: Configuring the Domain for a Java EE Agent
Add Proxy Configuration for JEE Agent
You can add proxy configuration for JEE agent.
-
Open the setDomainEnv file.
-
Linux: setDomainEnv.sh
-
Windows: setDomainEnv.cmd
The setDomainEnv file is located under <DOMAIN>/bin
-
-
Edit the file and add or modify the JAVA_OPTIONS parameters.
For example:
JAVA_OPTIONS="${JAVA_OPTIONS} ${JAVA_PROPERTIES} -Dhttp.proxyHost=<proxy host> -Dhttp.proxyPort=<proxy port> -Dhttps.proxyHost=<proxy host> -Dhttps.proxyPort=<proxy port>" export JAVA_OPTIONS
or
EXTRA_JAVA_PROPERTIES="-Dhttp.proxyHost=<proxy host> -Dhttp.proxyPort=<proxy port> -Dhttps.proxyHost=<proxy host> -Dhttps.proxyPort=< proxy port> ${EXTRA_JAVA_PROPERTIES}" export EXTRA_JAVA_PROPERTIES
-
Restart the agent.
Parent topic: Configuring the Domain for a Java EE Agent