14.3.1 Determining the usage of the container extension library

This section describes how to determine the usage of the container extension library according to the processing type and processing contents.

Organization of this subsection
(1) Determining the usage based on the processing type
(2) Determining the usage based on the processing contents

(1) Determining the usage based on the processing type

Classify the processing into the following three types and then determine whether to use the container extension library. If you do not want to use the container extension library, include the common libraries in the EJB-JAR files, WAR files, or library JARs.

(2) Determining the usage based on the processing contents

Classify the operations of the Enterprise Beans, servlets, and JSPs as follows, and determine whether to use the container extension library for each. The following table describes the guidelines for using the container extension library.

Table 14-3 Guidelines for using the container extension library for each operation

OperationsContainer extension libraryEJB-JAR file or WAR fileLibrary JAR
Operations to access the files and directoriesYNN
Operations using the JNI#YNN
Operations for invoking the CORBA objects through Smart AgentYNN
Operations of the J2EE container functionalityNYN
Class references within the EJB-JAR files and WAR filesN--N
Legend:
Y: Included
N: Not included
--: Not applicable

#: If you attempt to load the same native library in J2EE applications or Web applications, UnsatisfiedLinkError is thrown due to the JNI specifications. You can avoid the error by registering the native library that is commonly used by the applications, as the container extension library.


Note
The following access permission is assigned to the container extension library. You cannot change the access permission.
java.security.AllPermission
However, the setSecurityManager access permission of java.lang.RuntimePermission is not assigned.