J
j2ee-application
This element is deprecated. Use an application element instead.
Specifies a deployed Java EE application.
Superelements
applications
Subelements
The following table describes subelements for the j2ee-application element.
j2ee-application Subelements
|
|
|
|
zero or one |
Contains
a text description of this element. |
|
zero or more |
Configures a web service endpoint. |
|
zero
or more |
Specifies a property or a variable. |
|
Attributes
The following table describes attributes for the j2ee-application element.
j2ee-application Attributes
|
|
|
|
none |
The name of the
application. |
|
none |
A fully qualified or relative path to the directory to which the contents of
the .ear file have been extracted. If relative, it is relative to the
following directory: domain-dir/applications/ |
|
user |
(optional) Defines the type of the resource. For an application, the only
allowed value is user. |
enabled |
true |
(optional) Determines whether the application is enabled. |
|
none |
(optional) Specifies an
absolute or relative path to libraries specific to this module or application. A
relative path is relative to domain-dir/lib/applibs. If the path is absolute, the path must
be accessible to the domain administration server (DAS), which means it must be
under domain-dir. To include more than one path, use a system-specific separator, such
as a colon for Solaris or a semicolon for Windows. The libraries are
made available to the application in the order in which they are specified. |
|
false |
(optional) Specifies whether the application has been deployed as a directory. |
|
true |
(optional) Specifies
whether Java Web Start access is permitted for application clients in this application. |
|
jacc-provider
Specifies a Java Authorization Contract for Containers (JACC) provider for pluggable authorization.
Superelements
security-service
Subelements
The following table describes subelements for the jacc-provider element.
jacc-provider Subelements
|
|
|
|
zero or more |
Specifies a
property or a variable. |
|
Attributes
The following table describes attributes for the jacc-provider element.
jacc-provider Attributes
|
|
|
|
default |
Specifies the name of
the JACC provider. |
|
com.sun.enterprise.security.provider.PolicyWrapper |
Specifies the fully qualified class name of the JACC policy
provider. Corresponds to and can be overridden by the system property javax.security.jacc.policy.provider . |
policy-configuration-factory-provider |
com.sun.enterprise.security.provider.PolicyConfigurationFactoryImpl |
Specifies the
fully qualified class name of the JACC policy configuration factory provider. Corresponds to
and can be overridden by the system property javax.security.jacc.PolicyConfigurationFactory.provider . |
|
Properties
The following table describes properties for the jacc-provider element.
jacc-provider Properties
|
|
|
|
domain-dir/generated/policy |
Specifies the directory containing
the policy file. |
|
java-config
Specifies the Virtual Machine for the Java platform (JVM software) configuration parameters.
Superelements
config
Subelements
The following table describes subelements for the java-config element.
java-config Subelements
|
|
|
|
zero or one |
Configures a
profiler for use with the Enterprise Server. |
|
zero or more |
Contains JVM command line
options. |
|
zero or more |
Specifies a property or a variable. |
|
Attributes
The following table describes attributes for the java-config element.
java-config Attributes
|
|
|
|
${com.sun.aas.javaRoot} |
The path to the
directory where the JDK is installed. |
|
false |
(optional) If true, the server starts up in
debug mode ready for attachment with a JPDA-based debugger. |
|
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n |
|
|
-iiop -poa -alwaysgenerate -keepgenerated -g |
|
|
-g |
(optional) Specifies options passed to the Java compiler at application deployment time. |
|
none |
Not implemented. Do
not use. |
|
none |
Not implemented. Do not use. |
native-library-path-prefix |
none |
(optional) Specifies a prefix for the native
library path. The native library path is the automatically constructed concatenation of the Enterprise
Server installation relative path for its native shared libraries, the standard JRE native
library path, the shell environment setting (LD_LIBRARY_PATH on UNIX), and any path specified in
the profiler element. Since this is synthesized, it does not appear explicitly in
the server configuration. |
native-library-path-suffix |
none |
(optional) Specifies a suffix for the native library path. |
|
none |
(optional)
A comma separated list of class names, each of which must implement the
com.sun.appserv.BytecodePreprocessor interface. Each of the specified preprocessor classes is called in the order
specified. |
|
true |
Not implemented. Do not use. |
|
jdbc-connection-pool
Defines the properties that are required for creating a JDBC connection pool.
Superelements
resources
Subelements
The following table describes subelements for the jdbc-connection-pool element.
jdbc-connection-pool Subelements
|
|
|
|
zero or more |
Specifies
a property or a variable. |
|
Attributes
The following table describes attributes for the jdbc-connection-pool element. Changing the
following attributes requires a server restart: datasource-classname, driver-classname, associate-with-thread, lazy-connection-association, and lazy-connection-enlistment. In
addition, when you change a jdbc-connection-pool configuration, you should also redeploy or disable
and re-enable the referring modules and applications.
jdbc-connection-pool Attributes
|
|
|
|
none |
Specifies the name of the connection
pool. A jdbc-resource element’s pool-name attribute refers to this name. |
|
none |
(optional) Specifies
a text description of this element. |
|
none |
(optional) Specifies the class name of
the associated vendor-supplied data source. This class must implement javax.sql.DataSource, javax.sql.XADataSource , javax.sql.ConnectionPoolDatasource,
or a combination. |
|
none |
(optional) Specifies the interface the data source class implements. The value
of this attribute can be javax.sql.DataSource, javax.sql.XADataSource , javax.sql.ConnectionPoolDatasource, or java.sql.Driver. To
support configuration of JDBC drivers and applications that use java.sql.Driver implementations, set this attribute
to java.sql.Driver. This attribute must be specified to avoid ambiguity when a data
source class implements two or more of these interfaces or when a driver-classname
is specified. An error occurs if this attribute has a legal value and the
indicated interface is not implemented by the data source class. |
|
none |
(optional) Specifies the vendor-supplied
JDBC driver class name. This driver must implement the java.sql.Driver interface. |
|
false |
(optional) Specifies whether
to ping the pool during pool creation or reconfiguration to identify and warn
of any erroneous attribute values. |
|
8 |
(optional) Specifies the initial and minimum number
of connections maintained in the pool. |
|
32 |
(optional) Specifies the maximum number of connections that can
be created to satisfy client requests. |
|
60000 |
(optional) Specifies the amount of time,
in milliseconds, that the caller is willing to wait for a connection. If
0, the caller is blocked indefinitely until a resource is available or an error
occurs. |
|
2 |
(optional) Specifies the number of idle connections to be destroyed if the
existing number of connections is above the steady-pool-size (subject to the max-pool-size
limit). This is enforced periodically at the idle-timeout-in-seconds interval. An idle connection is
one that has not been used for a period of idle-timeout-in-seconds. When the pool
size reaches steady-pool-size, connection removal stops. |
|
300 |
(optional) Specifies the maximum time that a
connection can remain idle in the pool. After this amount of time, the
pool can close this connection. This timeout value must be kept shorter than the
server side (database) timeout value to prevent the accumulation of unusable connections in the
application. |
transaction-isolation-level |
default JDBC driver isolation level |
(optional) Specifies the transaction isolation level on
the pooled database connections. Allowed values are read-uncommitted, read-committed , repeatable-read, or serializable. Applications that
change the isolation level on a pooled connection programmatically risk polluting the pool,
which can lead to errors. See is-isolation-level-guaranteed for more details. |
is-isolation-level-guaranteed |
true |
(optional) Applicable
only when transaction-isolation-level is explicitly set. If true, every connection obtained from the
pool is guaranteed to have the desired isolation level. This might impact performance
on some JDBC drivers. Only set this attribute to false if you are
certain that the hosted applications do not return connections with altered isolation levels. |
is-connection-validation-required |
false |
(optional)
Specifies whether connections have to be validated before being given to the application.
If a resource’s validation fails, it is destroyed, and a new resource is
created and returned. |
connection-validation-method |
table |
(optional) Legal values are as follows:
auto-commit, which uses Connection.setAutoCommit(Connection.getAutoCommit())
meta-data, which uses Connection.getMetaData()
table, which performs a query on a table specified in the validation-table-name attribute
custom-validation, which uses a user-defined validation mechanism specified by the custom implementation class in validation-classname.
Because many JDBC drivers
cache the results of auto-commit and meta-data calls, they do not always provide
reliable validations. Check with the driver vendor to determine whether these calls are
cached or not. The table must exist and be accessible, but it doesn't require
any rows. Do not use an existing table that has a large number
of rows or a table that is already frequently accessed. More details can
be found at Connection Validation in GlassFish JDBC. |
|
none |
(optional) Specifies the table name to be used
to perform a query to validate a connection. This parameter is mandatory if
and only if connection-validation is enabled and connection-validation-method is set to table. |
|
none |
(optional) Specifies the
custom validation implementation class name. This parameter is mandatory if and only if
connection-validation is enabled and connection-validation-method is set to custom-validation. The classname provided must be
accessible to the Enterprise Server. The specified class must implement the org.glassfish.api.jdbc.ConnectionValidation interface. Some
of the built-in validation classes for commonly used databases are: org.glassfish.jdbc.validation.DerbyConnectionValidation,
org.glassfish.jdbc.validation.MySQLConnectionValidation,
org.glassfish.jdbc.validation.OracleConnectionValidation,
org.glassfish.jdbc.validation.PostgresConnectionValidation
org.glassfish.jdbc.validation.JDBC40ConnectionValidation The last class can apply
to any JDBC 4.0 compliant driver. |
|
none |
(optional) Specifies an SQL string to be
executed whenever a physical connection to the database is created (not reused) from
the pool. This initializes the state of the connection. |
|
false |
(optional) If true, closes
all connections in the pool if a single validation check fails. This parameter
is applicable if and only if is-connection-validation-required is set to true. |
non-transactional-connections |
false |
(optional)
If true, non-transactional connections can be made to the JDBC connection pool. These
connections are not automatically enlisted with the transaction manager. |
allow-non-component-callers |
false |
(optional) If true, non-Java-EE
components, such as servlet filters, lifecycle modules, and third party persistence managers, can use
this JDBC connection pool. The returned connection is automatically enlisted with the transaction
context obtained from the transaction manager. Standard Java EE components can also use such
pools. Connections obtained by non-component callers are not automatically closed at the end
of a transaction by the container. They must be explicitly closed by the
caller. |
validate-atmost-once-period-in-seconds |
0 |
(optional) Specifies the time interval within which a connection is validated at most
once. Minimizes the number of validation calls. A value of zero allows unlimited
validation calls. |
connection-leak-timeout-in-seconds |
0 |
(optional) Detects potential connection leaks by the application. A connection that is
not returned back to the pool by the application within the specified period
is assumed to be potentially leaking, and a stack trace of the caller
is logged. A zero value disables leak detection. A nonzero value enables leak
tracing. Use this attribute along with connection-leak-reclaim to avoid potential connection leaks from the
application. More details are at Connection Leak Tracing. |
|
false |
(optional) If true, the pool will reclaim a connection
after connection-leak-timeout-in-seconds occurs. |
connection-creation-retry-attempts |
0 |
(optional) Specifies the number of attempts to create a new connection
in case of a failure. |
connection-creation-retry-interval-in-seconds |
10 |
(optional) Specifies the time interval between attempts to
create a connection when connection-creation-retry-attempts is greater than 0. |
statement-timeout-in-seconds |
-1 |
(optional) Sets the query timeout property
of a statement to enable termination of abnormally long running queries. The default value
of -1 disables this feature. An abnormally long running JDBC query executed by
an application may leave it in a hanging state unless a timeout is
explicitly set on the statement. This attribute guarantees that all queries automatically time out
if not completed within the specified period. When statements are created, the queryTimeout
is set according to the value specified in this attribute. This works only
when the underlying JDBC driver supports queryTimeout for Statement, PreparedStatement, CallableStatement, and ResultSet. |
lazy-connection-enlistment |
false |
(optional)
If true, a connection is not enlisted in a transaction until it is
used. If false, any connection object available to a transaction is enlisted in
the transaction. |
lazy-connection-association |
false |
(optional) If true, a physical connection is not associated with a logical
connection until it is used. If false, a physical connection is associated
with a logical connection even before it is used. |
|
false |
(optional) Specifies whether connectionsare associated
with the thread to enable the thread to reuse the connections. If true, allows
connections to be saved as ThreadLocal in the calling thread. Connections get reclaimed only
when the calling thread dies or when the calling thread is not in
use and the pool has run out of connections. If false, the thread
must obtain a connection from the pool each time the thread requires a
connection. This attribute associates connections with a thread such that when the same thread
is in need of connections, it can reuse the connections already associated with
that thread. In this case, the overhead of getting connections from the pool
is avoided. However, when this value is set to true, you should verify
that the value of the max-pool-size attribute is comparable to the max-thread-pool-size attribute
of the thread-pool element. If the max-thread-pool-size value is much higher than the
max-pool-size value, a lot of time is spent associating connections with a new
thread after dissociating them from an older one. Use this attribute in cases
where the thread pool should reuse connections to avoid this overhead. |
|
false |
(optional) Specifies whether
a connection that is selected from the pool should be matched with the
connections with certain credentials. If true, enables connection matching. You can set to false
if connections are homogeneous. If the connection pool is used by applications that
have multiple user credentials, match-connections must be true. The connection pool matches the
request's credential with the connections in the pool and returns a matched connection
for use. For new requests with different credentials, unmatched free connections are automatically purged
to provide new connections to satisfy the new requests. This attribute need not
be true if it is known that there is only one credential used
by the applications and therefore the pool has homogeneous connections. |
max-connection-usage-count |
0 |
(optional) Specifies the number
of times a connections is reused by the pool, after which it is
closed. A zero value disables this feature. By limiting the maximum number of
times a connection can be reused, you can avoid statement leaks if the
application does not close statements. |
|
none |
(optional) Specifies that SQL statements executed by applications need to
be traced. Helps administrators analyze the statements. Expects as a value a comma-separated list
of listener implementation class names. Enables easy filtering of log messages for the
SQL statements. SQL trace listeners must implement the org.glassfish.api.jdbc.SQLTraceListener interface. |
|
0 |
(optional) Specifies the number of
statements to be cached using the lru (Least Recently Used) caching mechanism.
The default value of 0 disables statement caching. |
|
true |
(optional) If false, disables connection pooling. |
|
true |
(optional) If
true, wrapped JDBC objects are returned for Statement, PreparedStatement, CallableStatement, ResultSet, and DatabaseMetaData. This option
ensures that Statement.getConnection() is the same as DataSource.getConnection(). Therefore, this option should be true
when both Statement.getConnection() and DataSource.getConnection() are done. |
|
Properties
Most JDBC drivers allow use of standard property lists to specify the user,
password, and other resource configuration information. Although properties are optional with respect to
the Enterprise Server, some properties might be necessary for most databases. For details, see
the JDBC 4.0 Standard Extension API.
When properties are specified, they are passed to the vendor’s data source class
(specified by the datasource-classname attribute) as is using setName(value) methods.
The user and password properties are used as the default principal if container
managed authentication is specified and a default-resource-principal is not found in the application
deployment descriptors.
The following table describes some common properties for the jdbc-connection-pool element.
Changing JDBC driver properties requires a server restart.
jdbc-connection-pool Properties
|
|
|
Specifies the user name for
connecting to the database. |
|
Specifies the password for connecting to the database. |
|
Specifies the
database for this connection pool. |
|
Specifies the database server for this connection pool. |
|
Specifies
the port on which the database server listens for requests. |
|
Specifies the communication protocol. |
|
Specifies
the initial SQL role name. |
|
Specifies an underlying XADataSource, or a ConnectionPoolDataSource if
connection pooling is done. |
|
Specifies a text description. |
|
Specifies the URL for this connection pool.
Although this is not a standard property, it is commonly used. |
prefer-validate-over-recreate |
Specifies that validating idle
connections is preferable to closing them. This property has no effect on non-idle
connections. If set to true, idle connections are validated during pool resizing, and
only those found to be invalid are destroyed and recreated. If false, all idle
connections are destroyed and recreated during pool resizing. The default is false. |
|
Deprecated. Use
the equivalent attribute. |
LazyConnectionAssociation |
Deprecated. Use the equivalent attribute. |
|
Deprecated. Use the equivalent attribute. |
|
Deprecated. Use
the equivalent attribute. |
|
jdbc-resource
Defines a JDBC (javax.sql.DataSource) resource.
Superelements
resources
Subelements
The following table describes subelements for the jdbc-resource element.
jdbc-resource Subelements
|
|
|
|
zero or more |
Specifies a
property or a variable. |
|
Attributes
The following table describes attributes for the jdbc-resource element.
jdbc-resource Attributes
|
|
|
|
none |
Specifies the JNDI name
for the resource. |
|
none |
(optional) Specifies a text description of this element. |
|
none |
|
|
user |
(optional) Defines the type of the resource. Allowed
values are:
system-all - A system resource for all server instances and the domain application server.
system-admin - A system resource only for the domain application server.
system-instance - A system resource for all server instances only.
user - A user resource.
|
enabled |
true |
(optional) Determines whether this resource is enabled at runtime. |
|
jms-host
Configures the host of the built-in Java Message Service (JMS) that is managed
by the Enterprise Server.
Superelements
jms-service
Subelements
The following table describes subelements for the jms-host element.
jms-host Subelements
|
|
|
|
zero or more |
Specifies a
property or a variable. |
|
Attributes
The following table describes attributes for the jms-host element.
jms-host Attributes
|
|
|
|
none |
Specifies the name of
the JMS host. |
|
machine-name |
(optional) Specifies the host name of the JMS host. |
|
7676 |
(optional) Specifies
the port number used by the JMS provider. |
|
admin |
(optional) Specifies the administrator
user name for the JMS provider. |
|
admin |
(optional) Specifies the administrator password for the
JMS provider. |
|
jms-service
Configures the built-in Java Message Service (JMS) that is managed by the Enterprise
Server.
Superelements
config
Subelements
The following table describes subelements for the jms-service element.
jms-service Subelements
|
|
|
|
zero or more |
Specifies a
host. |
|
zero or more |
Specifies a property or a variable. |
|
Attributes
The following table describes attributes for the jms-service element.
jms-service Attributes
|
|
|
|
60 |
(optional) Specifies the
amount of time the server instance waits at startup for its configured default
JMS host to respond. If there is no response, startup is aborted. If
set to 0, the server instance waits indefinitely. |
|
EMBEDDED |
Specifies the type of JMS service:
EMBEDDED means the JMS provider is started in the same JVM machine as the Enterprise Server, and the networking stack is bypassed. Lazy initialization starts the default embedded broker on the first access of JMS services rather than at Enterprise Server startup.
LOCAL means the JMS provider is started along with the Enterprise Server. The LOCAL setting implicitly sets up a 1:1 relationship between an Enterprise Server instance and a Message Queue broker.
REMOTE means the JMS provider is remote and is not started by the Enterprise Server.
|
|
none |
(optional)
Specifies the string of arguments supplied for startup of the corresponding JMS instance. |
|
none |
Specifies the name of the default jms-host. If type is set to
LOCAL, this jms-host is automatically started at Enterprise Server startup. |
reconnect-interval-in-seconds |
5 |
(optional) Specifies
the interval between reconnect attempts. |
|
3 |
(optional) Specifies the number of reconnect attempts. |
|
true |
(optional) If true, reconnection is enabled. The JMS service automatically tries to reconnect
to the JMS provider when the connection is broken. When the connection is broken,
depending on the message processing stage, the onMessage() method might not be
able to complete successfully or the transaction might be rolled back due to a
JMS exception. When the JMS service reestablishes the connection, JMS message redelivery semantics
apply. |
|
random |
(optional) Specifies whether the reconnection logic selects the broker from the imqAddressList
in a random or sequential (priority) fashion. |
|
3 |
(optional) Specifies the number of
times the reconnection logic iterates over the imqAddressList if addresslist-behavior is set to
PRIORITY. |
|
mq |
(optional) Specifies the scheme for establishing connection with the broker. For example, specify
http for connecting to the broker over HTTP. |
|
jms |
(optional) Specifies the type of broker
service. If a broker supports SSL, the type of service can be ssljms. |
|
Properties
The following table describes properties for the jms-service element.
jms-service Properties
|
|
|
|
imqbroker |
Specifies the full Sun
GlassFish Message Queue broker instance name. |
|
none |
Specifies a suffix to add to the full
Message Queue broker instance name. The suffix is separated from the instance name
by an underscore character (_). For example, if the instance name is imqbroker, appending
the suffix xyz changes the instance name to imqbroker_xyz. |
|
false |
If true, appends the major
and minor version numbers, preceded by underscore characters (_), to the full Message Queue
broker instance name. For example, if the instance name is imqbroker , appending
the version numbers changes the instance name to imqbroker_8_0. |
|
guest |
Specifies the user name for
creating the JMS connection. Needed only if the default username/password of guest/guest is
not available in the broker. |
|
guest |
Specifies the password for creating the JMS connection. Needed only
if the default username/password of guest/guest is not available in the broker. |
|
jmx-connector
Configures a JSR 160/255 compliant remote JMX connector, which handles the JMX communication
between the domain administration server, the node agents, and the remote server instances.
This JMX connector also handles JMX communication between an external management client and the
domain administration server.
Only the system JMX connector is started by the server processes at startup.
Do not configure additional JMX connectors.
Superelements
admin-service
Subelements
The following table describes subelements for the jmx-connector element.
jmx-connector Subelements
|
|
|
|
zero or one |
Defines
SSL parameters. |
|
zero or more |
Specifies a property or a variable. |
|
Attributes
The following table describes attributes for the jmx-connector element.
jmx-connector Attributes
|
|
|
|
none |
Specifies the name of
the connector used by the designated system JMX connector for JMX communication between
server instances. Do not modify this name. |
|
rmi_jrmp |
(optional) Specifies the protocol that this JMX
connector supports. The only supported protocol is rmi_jrmp. Do not modify this value. |
|
0.0.0.0 |
Specifies the
IP address of the naming service where the JMX connector server stub is
registered. This is not the port of the server socket that does the
actual JMX communication. This is the address of the network interface where the
RMI registry is started. If your system has multiple network interfaces, modify this
value so that only a particular interface is selected. |
|
8686 |
Specifies the port number on
with the naming service (RMI registry) listens for RMI client connections. The only
use of this naming service is to download the RMI stubs. If the
default port is occupied, a free port is used. Legal values are
1 - 65535. On UNIX, creating sockets that listen on ports 1 -
1024 requires superuser privileges. |
|
admin-realm |
Specifies the name of an auth-realm subelement of
the security-service element for the server instance that is running this JMX connector's
server end. Note that this is a dedicated administration security realm. |
|
false |
(optional) Determines
whether JMX communication is encrypted. |
|
true |
(optional) Enables the JMX connector. Do
not modify this value. |
|
jruby-container
Configures the JRuby container. This element is present only if at least one
JRuby application is deployed.
Superelements
config
Subelements
The following table describes subelements for the jruby-container element.
jruby-container Subelements
|
|
|
|
only one |
Configures the JRuby
runtime pool. |
|
Attributes
The following table describes attributes for the jruby-container element.
jruby-container Attributes
|
|
|
|
as-install/jruby |
Specifies the directory where
JRuby itself (not the Enterprise Server JRuby container) is installed. Overridden by the
jruby.home property of application if defined. |
|
jruby-runtime-pool
Configures the JRuby runtime pool. This element is present only if at least
one JRuby application is deployed.
Superelements
jruby-container
Subelements
none
Attributes
The following table describes attributes for the jruby-runtime-pool element.
jruby-runtime-pool Attributes
|
|
|
|
1 |
Specifies the initial number
of JRuby runtimes to start. Must be greater than zero, at least jruby-runtime-min, and
jruby-runtime-max or less. Overridden by the jruby.runtime property of application if defined. |
|
1 |
Specifies the
minimum number of JRuby runtimes in the pool. Must be greater than zero,
jruby-runtime or less, and jruby-runtime-max or less. Overridden by the jruby.runtime.min property of
application if defined. |
|
1 |
Specifies the maximum number of JRuby runtimes in the pool. Must
be greater than zero, at least jruby-runtime-min and at least jruby-runtime. Overridden by
the jruby.runtime.max property of application if defined. |
|
jvm-options
Contains JVM command line options, for example:
<jvm-options>-Xdebug -Xmx128m</jvm-options>
For information about JVM options, see http://java.sun.com/docs/hotspot/VMOptions.html.
Superelements
java-config, profiler
Subelements
none - contains data