Sun Java System Application Server Enterprise Edition 8.1 2005Q2 Administration Guide

Application Server Instances

About Application Server Instances

The Application Server creates one application server instance, called server at the time of installation. You can delete the server instance and create a new instance with a different name if you prefer.

Each Application Server instance has its own J2EE configuration, J2EE resources, application deployment areas, and server configuration settings. Changes to one application server instance have no effect on other application server instances. You can have many application server instances within one administrative domain.

For many users, one application server instance meets their needs. However, depending upon your environment, you might want to create one or more additional application server instances. For example, in a development environment you can use different application server instances to test different Application Server configurations, or to compare and test different application deployments. Because you can easily add or delete an application server instance, you can use them to create temporary “sandbox” areas to experiment with while developing.

In addition, for each application server instance you can also create virtual servers. Within a single installed application server instance you can offer companies or individuals domain names, IP Addresses, and some administration capabilities. For the users, it is almost as if they have their own web server, without the hardware and basic server maintenance. These virtual servers do not span application server instances. For more information about virtual servers, see To configure the JVM general settings.

In operational deployments, for many purposes you can use virtual servers instead of multiple application server instances. However, if virtual servers do not meet your needs, you can also use multiple application server instances.

An Application Server instance is not started automatically. Once you start an instance, the instance runs until you stop it. When you stop an application server instance, it stops accepting new connections, then waits for all outstanding connections to complete. If your machine crashes or is taken offline, the server quits and any requests it was servicing may be lost.

Defining Application Server Instances

Application server instances form the basis of an application deployment. Each instance belongs to a single domain and has its own directory structure, configuration, and deployed applications. Each server instance also includes the J2EE platform web and EJB containers. Every new server instance must contain a reference to a node agent name defining the machine on which the instance will reside.

There are three types of server instances that can be created. Each server instance can only be of one type:

Figure 1–2 shows an application server instance in detail. The application server instance is a building block in the clustering, load balancing, and session persistence features of the Application Server Enterprise Edition.

Figure 1–2 Application Server Instance

Figure shows server instance features and how they communicate with various clients, databases, and other servers and systems.

About Stand-Alone Instances

An Application Server instance is not started automatically. Once you start an instance, the instance runs until you stop it. When you stop an application server instance, it stops accepting new connections, then waits for all outstanding connections to complete. If your machine crashes or is taken offline, the server quits and any requests it was servicing may be lost.

See Also:

Viewing General Server Information

From the General Tab you can perform the following tasks:

In addition, you can select the following tabs to perform these additional tasks:

ProcedureTo deploy an application

From the Applications Tab, you can enable, disable, and deploy selected applications associated with the instance.

  1. Select the checkbox for the desired application.

  2. From the Deploy drop down menu, select the type application module you want to deploy:

    • Enterprise Application: a J2EE application in an EAR (Enterprise Application Archive) file or directory.

    • Web Application: a collection of Web resources such as JavaServer Pages (JSPs), servlets, and HTML pages that are packaged in a WAR (Web Application Archive) file or directory.

    • EJB Module: one or more Enterprise JavaBeans (EJB components) contained in an EJB JAR (Java Archive) file or directory.

    • Connector Module: connects to an Enterprise Information System (EIS) and is packaged in a RAR (Resource Adapter Archive) file or directory.

    • Lifecycle Module: performs tasks when it is triggered by one or more events in the server’s lifecycle.

    • App Client Module: also called a J2EE application client JAR file, contains the server-side routines for the client.

ProcedureTo create a new resource type

From the Resources Tab, you can enable, disable, and create a new resource type to associate with the instance.

  1. Select the checkbox for the desired resource.

  2. From the New drop down menu, select the resource type you want to create and associate with that instance:

    • JDBC: provide applications with a means of connecting to a database.

    • Persistence Manager: required for applications with container-managed persistence beans (needed for backward compatibility).

    • JMS Connection Factory: objects that allow an application to create other JMS objects programmatically.

    • JMS Destination: represents a mail session in the JavaMail API, which provides a platform-independent and protocol-independent framework to build mail and messaging applications.

    • JavaMail: provides a platform-independent and protocol-independent framework to build mail and messaging applications.

    • Custom: represents nonstandard resources with a defined JNDI subcontext, resource type, and factory class.

    • External: enables an application to locate an external resource object in a Lightweight Directory Access Protocol (LDAP) repository.

    • Connector: a program object that provides an application with a connection to an enterprise information systems (EIS).

    • Admin Object: configures a JSR-160 compliant remote JMX connector.

Administration Server Advanced Settings

The Administration Server Advanced settings allow you to set general properties for deploying applications. These properties enable you to ensure and monitor that changes to deployed applications are detected and the modified classes reloaded.

Setting Applications Configurations

If dynamic reloading is enabled, the server periodically checks for changes in the files of the deployed application and automatically reloads the application with the changes. Dynamic reloading is useful in a development environment because it allows code changes to be tested quickly. In a production environment, however, dynamic reloading may degrade performance.

Dynamic reloading is intended for development environments. It is incompatible with session persistence, a production environment feature. Do not enable session persistence if dynamic deployment is enabled.


Note –

Dynamic reloading is only available for the default server instance.


To configure dynamic reloading from the Applications Configuration page, configure the following:

ProcedureTo configure auto deploy settings

The auto deploy feature enables you to deploy a prepackaged application or module by copying it to the domain-dir/autodeploy directory.

For example, copy a file named hello.war to the domain-dir/autodeploy directory. To undeploy the application, remove the hello.war file from the autodeploy directory.

The auto deploy feature is intended for development environments. It is incompatible with session persistence, a production environment feature. Do not enable session persistence if auto deploy is enabled.


Note –

Auto deploy is only available for the default server instance.


  1. Go to the Applications Configuration page.

  2. Enable or disable auto deploy by selecting or deselecting the Enabled checkbox.

  3. In the Auto Deploy Poll Interval field, specify how often the server checks the auto deploy directory for application or module files.

    Changing the poll interval does not affect the amount of time it takes to deploy an application or module.

  4. In the Auto Deploy directory, if you specify the directory where you build your application, then you won’t have to copy the file to the default auto deploy directory.

    By default a variable is used to eliminate the need to manually change the directory for multiple server instances.

  5. To run the verifier before deployment, select the Verifier Enabled checkbox.

    The verifier examines the structure and content of the file. Verification of large applications is often time-consuming.

  6. To precompile JSP pages, select the JSPs checkbox.

    If you do not select this checkbox, the JSP pages are compiled at runtime when they are first accessed. Because compilation is often time-consuming, in a production environment select this checkbox.

  7. Click the Add Property button to specify additional settings.

Setting Domain Attributes

The following domain attributes properties are available.

Table 1–1 Domain Attributes values

Property  

Definition  

com.sun.aas.installRoot

Directory where the application server is installed. 

com.sun.aas.instanceRoot

Top level directory for a server instance. 

com.sun.aas.hostName

Name of the host (machine). 

com.sun.aas.javaRoot

.J2SE installation directory. 

com.sun.aas.imqLib

Library directory of the Sun Java System Message Queue software. 

com.sun.aas.configName

Name of the configuration being used by a server instance. 

com.sun.aas.instanceName

Name of the server instance. This property is not available for the default-config but can be used for customized configurations. 

com.sun.aas.clusterName

Name of the cluster. This property is only set on the clustered server instances. This property is not available for the default-config but can be used for customized configurations. 

com.sun.aas.domainName

Name of the domain. This property is not available for the default-config but can be used for customized configurations. 

Instance Specific Configuration Properties

The instance specific Configuration Properties override the values for this instance.


Note –

The default values are defined in the configuration bound to the instance.


ProcedureTo revert the value back to the default value

  1. Remove the override value.

  2. Click Save.

    If no override value is set, the default value is used.

ProcedureTo add instance properties

  1. Click the Add Property button to specify additional settings.

    The following property attribute name/value pairs for configuring the resource are available:

    Property  

    Definition  

    HTTP_LISTENER_PORT 

    This port is used to listen for HTTP requests. This property specifies the port number for http-listener-1. Valid values are 1-65535. On UNIX, creating sockets that listen on ports 1-1024 requires superuser privileges. 

    HTTP_SSL_LISTENER_PORT 

    This port is used to listen for HTTPS requests. This property specifies the port number for http-listener-2. Valid values are 1-65535. On UNIX, creating sockets that listen on ports 1-1024 requires superuser privileges. 

    IIOP_LISTENER_PORT 

    This property specifies which ORB listener port for IIOP connections orb-listener-1 listens on. 

    IIOP_SSL_LISTENER_PORT 

    This port is used for secure IIOP connections. 

    JMX_SYSTEM_CONNECTOR_PORT 

    This property specifies the port number on which the JMX connector listens. Valid values are 1-65535. On UNIX, creating sockets that listen on ports 1-1024 requires superuser privileges. 

    IIOP_SSL_MUTUALAUTH_PORT 

    This property specifies which ORB listener port for IIOP connections the IIOP listener called SSL_MUTUALAUTH listens on. 

ProcedureTo delete properties

  1. Click the for the property you wish to delete.

  2. Click the Delete Property button.

ProcedureTo create an Instance

  1. In the tree component, select the Standalone Instances node.

  2. On the Stand Alone Server Instances page, click New.

  3. In the Name field, identify a unique name for the new instance.

  4. Select a Node Agent.

    The node agent must be started using the asadmin start-node-agent command on the node agent’s host machine so that the server instance you are creating can be associated with that node agent.

  5. Select a desired configuration.

    • Reference an existing configuration. No new configuration is added.

    • Make a copy of an existing configuration. A new configuration is added when the server instance or cluster is added.

  6. To copy from a different configuration, specify it when creating the new instance.

    By default, new instances are created with configurations copied from the default-config configuration.

  7. For a server instance, the new configuration is named instance-name-config.

    The configuration default-config is the default configuration that acts as a template for creating standalone server instance. No unclustered server instances or clusters are allowed to refer to the default-config configuration; it can only be copied to create new configurations. Edit the default configuration to ensure that new configurations copied from it have the correct initial settings.

Equivalent asadmin command

create-instance

ProcedureTo start an instance

  1. In the tree component, expand the Stand-Alone Instances node.

  2. Select the Instance you wish to start.

  3. On the General tab, click Start Instance to start the instance.

    The node agent associated with the instance must be started using the asadmin start-node-agent command before you can successfully start the instance.

    Once an instance is started, it is possible to perform the following tasks from the General tab:

    • Click Stop Instance to stop the instance.

    • Click JNDI Browsing to view the JNDI entries for that instance.

    • Click View Log Files to view the Log Viewer and specify logging options.

    • Click Rotate Log File.

    • Click Recover Transactions to recover incomplete transactions.

Equivalent asadmin command

start-instance

Recovering Transactions

Transactions might be incomplete either because the server crashed or a resource manager crashed. It is essential to complete these stranded transactions and recover from the failures. Application Server is designed to recover from these failures and complete the transactions upon server startup.

If the selected server is running, then recovery will be done by the same server. If the selected server is not running, then the selected Destination Server will do the recovery.

ProcedureTo stop an instance

  1. In the tree component, expand the Standalone Instances node.

  2. Select the Instance you wish to stop.

  3. On the General tab, click Stop Instance to stop the instance.

Equivalent asadmin command

stop-instance

ProcedureTo shut down the Administration Server

  1. In the tree component, select the Standalone Instances node.

  2. Select the Administration Server Instance.

  3. Click Stop.

    A confirmation dialog displays to confirm that you wish to shut down the Administration Server.