Oracle® SOA Suite Developer's Guide 10g (10.1.3.1.0) Part Number B28764-01 |
|
|
View PDF |
After you complete the design of a BPEL process, you compile and deploy the process to Oracle BPEL Server from Oracle JDeveloper. (Oracle BPEL Server is started when the application server is started.) If compilation and deployment are successful, you can initiate and manage the BPEL process from Oracle BPEL Control. See Chapter 13, "Monitoring Oracle BPEL Process Manager" for more information.
Deployment sends the Oracle BPEL Process Manager archive (a set of files in a JAR file with a directory structure similar to the project directory structure) to Oracle BPEL Server. The deployment operation automatically validates and compiles the project directory into the BPEL archive. Therefore, you do not need to explicitly validate, compile, and recompile a project before deployment. Use Oracle BPEL Control to view any currently running BPEL processes before compiling and deploying additional processes. You must wait for the deployment of a BPEL process to complete before attempting to deploy another process.
The first time you deploy a BPEL process to Oracle BPEL Server, a default version label of 1.0 is automatically created. A version identifies a specific deployed instance of a BPEL process. The version label is appended to the end of the JAR file name created when you deploy the BPEL process.
If this label version is already deployed and the server mode is production, you are prompted to overwrite the existing version or enter a different version label. If you overwrite the version, the old process definition on the server is replaced by the new definition. You cannot revert to the old definition. In addition, any process instances that ran under the old definition are marked as stale. The stale instances cannot be examined, and all flow and audit information is lost. If you enter a different version label for the new process definition (for example, 2.0), it is deployed to Oracle BPEL Server, while the older, deployed process definition (1.0) also continues to run simultaneously on Oracle BPEL Server. The instances that ran under the old definition are retained, and not marked as stale. You can still examine the flow and audit information for these instances. If the server mode is development, you are not prompted and the version is automatically overwritten.
In a development environment, Oracle recommends that you always deploy processes to the same version on Oracle BPEL Server. This way, you avoid marking processes explicitly as the default. The life cycle to follow for this environment is as follows:
Design your process.
Deploy the process to Oracle BPEL Server (version is 1.0). This becomes the default process for any new instances.
Redesign the process as needed.
Redeploy the process as version 1.0 (this is a newer version that overwrites the older version, but version 1.0 remains the default process).
In a production environment, Oracle recommends that you increment version numbers as you deploy newer versions. For example, if OrderBooking version 1.0 is running in a production environment, then deploy the newer version of OrderBooking to version 2.0. When you have adequately tested and verified your process, mark it as the default. New instances are started using this definition. All version 1.0 instances switch seamlessly to version 2.0. This enables you to decide when a process is ready for production mode. The life cycle to follow for this scenario is as follows:
Design your process.
Deploy the process to Oracle BPEL Server with a different version number (for example, use version 2.0 if the older default version is 1.0).
Test version 2.0 of the process.
Activate version 2.0 by marking it as the default process.
Note: Oracle BPEL Process Manager provides an automated test suite framework for creating and running repeatable tests on a BPEL process. Test cases enable you to simulate the interaction between a BPEL process and its Web service partners before deployment in a production environment. See Oracle BPEL Process Manager Developer's Guide for more information on testing BPEL processes before deployment. |
You can deploy directly to the default domain or any other domain you have created by using an integration server connection. Domains enable you to partition and manage instances of your processes.
To compile and deploy a BPEL process:
In the Application Navigator, right-click the project name (JPR file) of the process you want to deploy.
Select Deploy > my_integration_server_connection > Deploy to default domain.
Click OK.
This compiles the BPEL process.
Check for errors in the Log Window at the bottom of Oracle JDeveloper. Use both the Messages tab and the Apache Ant tab to review messages.
If there are no errors, deployment was successful. If there are errors, double-click line with the error to display details about the type and location of the error.
Make corrections and deploy again.
See Oracle BPEL Process Manager Developer's Guide for more information on the following topics:
Creating a BPEL domain
Testing a BPEL process
Using BPEL Process Deployer
Compiling without deploying in Oracle JDeveloper
Changing the Oracle BPEL Server mode
Deploying a BPEL Suitcase to a specific domain
Undeploying a BPEL process from a specific domain
Understanding build and compiler command line tools for deploying a BPEL process
During compilation and deployment, the BPEL process archive and its components are compiled and packaged into a JAR file known as a BPEL suitcase. This JAR file includes the following files:
project_name
.bpel
file implementation of the process
project_name
.wsdl
file
bpel.xml
deployment descriptor file
Any other local resources that are required, such as XML schemas, Java classes or libraries
The suitcase JAR file is deployed to
JDev_Oracle_Home\jdev\mywork\application_name\process_name\output
The suitcase JAR file name follows the convention of bpel_
projectname
_
versionnumber
.jar
.
After you compile and deploy a BPEL process, use Oracle BPEL Control to see running instances. If the process requires input to complete, you can initiate the input from Oracle BPEL Control. See Chapter 13, "Monitoring Oracle BPEL Process Manager" for information.