Although the Java EE 5 deployment API provides a simple, standardized way to configure applications and modules for use with a Java EE 5-compliant application server, the specification does not address many deployment features that were available in previous WebLogic Server releases. For this reason, WebLogic Server provides important extensions to the Java EE 5 deployment API specification to support capabilities described in .
In this article, we will discuss some important concepts for understanding the deployment process in WebLogic Server.
The term application deployment refers to the process of making an application or module available for processing client requests in a WebLogic Server domain. You have several options to deploy a web application onto WebLogic Server:
- A packaged deployment tool which provides deployment services for WebLogic Server.
- See "Deployment Tools" in Deploying Applications to Oracle WebLogic Server
- Any deployment operation that can be implemented using the WebLogic Deployment API is implemented, either in part or in full, by
weblogic.Deployeris the recommended deployment tool for the WebLogic Server environment.
- Ant task tool for making WebLogic Server configuration changes
- See "Using Ant Tasks to Configure and Use a WebLogic Server Domain"in Developing Applications for Oracle WebLogic Server
- WLST functionality includes the capabilities of the following WebLogic Server command-line utilities:
- JSR-88 API for deployment
- WebLogic Deployment API, which implements and extends the Java EE Deployment API specification (JSR-88)
- The WebLogic Deployment API classes and interfaces extend and implement the Java EE Deployment API specification (JSR-88) interfaces, which are described in the javax.enterprise.deploy sub-packages.
- JMX Deployment API
- Supports all of the common functionality available in the Java EE Deployment API specification (JSR-88).
- You can use the JMX API as an alternative to JSR-88 to perform deployment tasks on specified target servers
- WLS console (through JSR-88 API)
- FMWC (through JSR-88 API and JMX Deployment API)
To help you understand the deployment process in WebLogic Server, we have listed the most important concepts below:
- Deployable objects (or artifacts)
- Which can be deployed on a weblogic domain
- Supported module types include:[11,12]
- JMS, JDBC, Interception, Config, and WLDF
- Web Services
- Physical package types:
- EARs, standalone J2EE and non-J2EE modules
- Deployment operations (or tasks)
- Such as distributing, starting, stopping, deploying, redeploying, undeploying, etc.
- if successful, an AppDeploymentMBean for the application will be created
- Deployment targets
- Target types available to WebLogic Server include:
- JMS Server
- SAF Agent
- Virtual host
- Deployment order
- An integer value that indicates when this artifact is deployed, relative to other deployable artifacts on a server, during startup.
- Artifacts with lower values are deployed before those with higher values.
- Deployment plan
- You can use either
weblogic.PlanGeneratorto export portions of a WebLogic Server deployment configuration into a deployment plan file.[16,17]
- Describes the application structure, identifies all deployment descriptors, and exports a subset of the application's configurable properties. For example, it includes:
- Resource dependencies
- Resource declarations
- Non-resource oriented configurable properties
- Properties that may be changed in a running application, etc
- A deployment plan is an XML document used to define an application's deployment configuration for a specific WebLogic Server environment, such as development, test, or production.
- A deployment plan resides outside of an application's archive file and contains deployment properties that override an application's existing Java Enterprise Edition and WebLogic Server deployment descriptors.
- Use deployment plans to easily change an application's WebLogic Server configuration for a specific environment, without modifying existing deployment descriptors.
- Deployment configuration
- Refers to the process of preparing an application or deployable resource for deployment to a WebLogic Server instance.
- Modification of individual WebLogic Server configuration values based on user inputs and the selected WebLogic Server targets
- Deployment staging
- The staging mode of an application or deployment plan can be provided to affect its deployment behavior.
- An application's deployment plan can be staged independently of the application archive, allowing you to stage a deployment plan when the application is not staged.
- If you do not specify a staging mode, the deployment plan uses the value specified for application staging as the default.
- Staging mode includes:
- STAGE—Application files (or deployment plans) are copied to target servers
- NO_STAGE—Application files (or deployment plans) are not copied to target servers
- EXTERNAL_STAGE—Application files (or deployment plans) are copied manually to target servers
"Install Root" Abstraction
The SessionHelper in
WebLogic Deployment API views an application and deployment plan artifacts using an "install root" abstraction, which ideally is the actual organization of the application. The install root appears as follows:
install-root (eg) -- app ----- archive (eg ) -- plan ----- deployment plan (eg ) ----- external descriptors (eg META-INF/weblogic-application.xml...)
- JSR 88: JavaTM EE Application Deployment
- WebLogic Server Deployment Features
- Understanding the WebLogic Deployment API (WebLogic 12.1.2)
- WLST FAQs
- WLST Command and Variable Reference
- Java EE 5 API Summary
- The JMX API for Deployment Operations
- Administration Console Online Help
- Using Fusion Middleware Control to Manage WebLogic Server
- The Configuration File in WebLogic Server Domain — config.xml (Xml and More)
- Module Types
- Example Module Deployment
- Oracle® Fusion Middleware Deploying Applications to Oracle WebLogic Server
- Interface AppDeploymentMBean
- MBean Reference for Oracle WebLogic Server
- Create a deployment plan using Administration Console
- Oracle WebLogic Server 12c: Creating and Using a Deployment Plan
- WebLogic Deployment API