B2B environment setup
Here is the list of some OFM concepts that will be used in this article:
- Domain: It is the basic administration unit that includes a special WebLogic Server instance called the Administration Server, and optionally one or many Java components.
- Java component: It is a Java EE application deployed to an Oracle WebLogic Server domain as part of a domain template. For example, SOA Suite is a Java component.
- Managed server: It is an additional WebLogic Server included in a domain, to host Java components such as SOA Suite.
We will use the UNIX operating system for our tutorials. The following table depicts the directory environment variables used throughout the article for configuring the Oracle SOA Suite deployment:
|Name||Variable||What It Is||Example|
|Middleware home||MW_HOME||The top-level directory for all OFM products|
|WebLogic Server home||WL_HOME||Contains installed files necessary to host a WebLogic Server||$MW_HOME/wlserver_10.3|
|Oracle home||SOA_ORACLE_HOME||Oracle SOA Suite product directory||$MW_HOME/Oracle_SOA1|
|Oracle Common Home||ORACLE_COMMON_HOME||Contains the binary and library files required for the Oracle Enterprise Manager Fusion Middleware Control and Java Required Files (JRF)||$MW_HOME/oracle_common|
|Domain home||SOA_DOMAIN_HOME||The absolute path of the source domain containing the SOA Suite Java component||$MW_HOME/user_projects/domains/SOADomain|
|Java home||JAVA_HOME||Specifies the location of JDK (must be 1.6.04 or higher) or JRockit||$MW_HOME/jdk160_29|
|Ant Home||ANT_HOME||Specifies the location of Ant archive location||$MW_HOME/org.apache.ant_1.7.1|
The following figure depicts a snapshot of the SOA Suite directory’s hierarchical structure:
For the recommended SOA Suite directory location, please refer to the OFM Enterprise Development guide for SOA Suite that can be found at http://docs.oracle.com/cd/E16764_01/core.1111/e12036/toc.htm.
JDeveloper installation tips
JDeveloper is a development tool that will be used in the article. It is a full service Integrated Development Environment (IDE), which allows for the development of SOA projects along with a host of other Oracle products, including Java. If it has not been installed yet, one may consider downloading and installing the VM VirtualBox (VBox) Image of the entire package of SOA Suite, B2B, and JDeveloper, provided by Oracle on the Oracle download site found at http://www.oracle.com/technetwork/middleware/soasuite/learnmore/vmsoa-172279.html. All you need to do is to install Oracle VM VirtualBox, and import the SOA/BPM appliance. This is for evaluation and trial purposes, and is not recommended for production use; however, for the purpose of following, along with the tutorial in the article, it is perfect.
The following table shows minimum and recommended requirements for the VBox Image:
|Memory (RAM)||4-6 GB||8 GB|
|Disk Space||25 GB||50 GB|
While VM’s are convenient, they do use quite a bit of disk space and memory. If you don’t have a machine that meets the minimum requirements, it will be a challenge to try the exercises. The other alternative is to download the bits for the platform you are using from the Oracle download page, and install each software package, and configure them accordingly, including a JDK, a DB, WebLogic Server, SOA Suite, and JDeveloper, among other things you may need.
If you decide that you have enough system resources to run the VBox Image, here are some of the major steps that you need to perform to download and install it. Please follow the detailed instructions found in the Introduction and Readme file that can be downloaded from http://www.oracle.com/technetwork/middleware/soasuite/learnmore/soabpmvirtualboxreadme-1612068.pdf, in order to have the complete set of instructions.
- Download the Introduction and Readme file, and review.
- Enable hardware virtualization in your PC BIOS if necessary.
- To download and install the VirtualBox software (engine that runs the virtual machine on your host machine), click on the link Download and install Oracle VM VirtualBox on the download page.
- To download the 7 pieces of the ZIP file, click on each file download ending with 7z.00[1-7] on the download page.
- To download the MD5 Checksum tool if you don’t have one, click on the link Download MD5sums if you’re on Windows to check your download worked okay on the download page.
- Run the MD5 Checksum tool to verify the 7 downloaded files: md5sums oel5u5-64bit-soabpm-11gr1-ps5-2-0-M.7z.001.
- Repeat for all 7 files. (This takes quite a while, but it is best to do it, so that you can verify that your download is complete and accurate.)
- Compare the results of the program with the results in the download that ends with .mdsum. They should match exactly.
- Extract the VBox Image from the .001 file using a Zip/Unzip tool.
Use a ZIP tool such as 7-Zip (available as freeware for Windows), WinZip, or other to extract the .ova file from the 7 files into a single file on your platform. Using 7-Zip, if you extract from the first file; it will find the other 6 files and combine them all as it extracts.
- Start VirtualBox and set preferences such as the location of the VBox Image on your disk (follow instructions in the readme file).
- Import the new .ova file that was extracted from the ZIP file.
- Check settings and adjust memory/CPU.
- Start the appliance (VBox Image).
- Login as oracle with password oracle (check Readme).
- Choose the domain type dev_soa_osb.
- Set up a shared folder, you can use to share files between your machine and the virtual machine, and restart the VM.
- Once you are logged back in, start the admin server using the text based menu.
- Once the server is started, you can start the graphical desktop using the text based menu.
- Click on the jDeveloper Icon on the desktop of the VM to start jDeveloper. Choose Default Role when prompted for a role.
At the time of writing, the latest available version is 11g PS5 (188.8.131.52.6). The VBox Image comes with SOA Suite, Oracle 11g XE Database, and JDeveloper, pre-installed on a Linux Virtual Machine. Using the VirtualBox technology, you can run this Linux machine virtually on your laptop, desktop, or on a variety of other platforms. For the purpose of this article, you should choose the dev_soa_osb type of domain.
Oracle B2B is installed as a part of the SOA Suite installation. The SOA Suite installation steps are well documented, and are beyond the scope of this article. If you have never installed Oracle SOA Suite 11g, check with the Installation Guide for Oracle SOA Suite and Oracle Business Process Management Suite 11g. It can be downloaded from the Oracle Technology Network (OTN) Documentation downloads page at http://docs.oracle.com/cd/E23943_01/doc.1111/e13925/toc.htm.
There are several important topics that did not have enough coverage in the SOA Suite Installation Guide. One of them is how to prepare the environment for the SOA/B2B installation. To begin, it is important to validate whether your environment meets the minimum requirements specified in the Oracle Fusion Middleware System Requirements and Specifications document. It can be downloaded from the Oracle Technology Network (OTN) Documentation downloads page at http://docs.oracle.com/html/E18558_01/fusion_requirements.htm.
The spreadsheet provides very important SOA Suite installation recommendations, such as the minimum disk space information and memory requirements that could help the IT hardware team with its procurement planning process. For instance, the Oracle recommended hardware and system requirements for SOA Suite are:
- Minimum Physical Memory required: 2 gigabytes
- Minimum available Memory Required: 4 gigabytes
- CPU: dual-core Pentium, 1.5 GHz or greater
- Disk Space: 15 gigabytes or more
This document also has information about supported databases and database versions.
Another important document that has plenty of relevant information is Oracle Fusion Middleware 11g Release 1 (11.1.1.x) Certification Matrix. It can be downloaded from the Oracle Technology Network (OTN) Documentation downloads page at http://www.oracle.com/technetwork/middleware/downloads/fmw-11gr1certmatrix.xls.
It is indeed a treasure chest of information. This spreadsheet may save you from a lot of headache. The last thing someone wants to run into is the need to re-install, just because they did not properly read and /or missed some recommendations. Here are some important points from the spreadsheet you don’t want to miss:
- Hardware platform version’s compatibility with a particular SOA Suite release
- Supported JDK versions
- Interoperability support for SOA Suite with WebLogic Server
- Supported database versions
In conclusion, the following list includes a complete SOA Suite software stack (as used in the article):
- Oracle WebLogic Server (10.1.3.6) (Required)
- Repository Creation Utility (RCU) (184.108.40.206.0) (Required)
- SOA Suite 11g (220.127.116.11.0) (Required)
- JDeveloper (18.104.22.168.0) (Required)
- JDeveloper Extension for SOA (Required)
- Oracle B2B Document Editor release 7.05 (Optional)
- Oracle Database 11g (Required)
Oracle B2B installation and post-installation configuration notes
There are several important installation and post-installation steps that may directly or indirectly impact the B2B component’s behavior.
Creating a WebLogic domain is one of the most important SOA Suite 11g installation steps. The BEA engineers, who used to work with WebLogic prior to 11g, never before had to select SOA Suite components while creating a domain. This process is completely new for the Oracle engineers who are familiar only with prior releases of SOA Suite. There are several steps in this process that, if missed, might require a complete re-installation.
A common mistake that people make when creating a new domain is that they don’t check the Enterprise Manager checkbox. As a result, Enterprise Manager is not available, meaning that neither instance monitoring and tracking, nor access to the B2B configuration properties is available. Make sure you do not make such a mistake by selecting the Oracle Enterprise Manager checkbox.
Oracle Enterprise Manager has been assigned a new name: Enterprise Manager Fusion Middleware Control.
While planning SOA Suite deployment architecture, it is recommended to choose ahead of time between the following two WebLogic domain configurations:
- Developers domain
- Production domain
In the Developers domain configuration, SOA Suite is installed as part of the administration server, implying that a separate managed server will not be created. This configuration could be a good choice for a development server, or a personal laptop, or any environment where available memory is limited. One should always keep in mind that SOA Suite requires up to 4 gigabytes of available memory.
To set up the Developers domain, select the Oracle SOA Suite for developers checkbox on the Select Domain Source page, as shown in the following screenshot:
Oracle strongly recommends against using this configuration in a production environment by warning that it will not be supported; that is, Oracle Support won’t be able to provide assistance for any issues that happen to occur in this environment.
Conversely, if the Oracle SOA Suite checkbox is selected, as shown in the following screenshot, a managed server will be created with a default name soa_server1. Creating a separate managed server (which is a WebLogic Java Virtual Machine) and deploying SOA Suite to this managed server, provides a more scalable configuration.
If SOA Suite for developers was installed, you need to perform the following steps to activate the B2B user interface:
- Login to the Oracle WebLogic Server Administration Console using the following URL:
http :: //<localserver>:7001/console (note that 7001 is the default port unless a different port was chosen during the installation process).
- Provide the default administrator account (the WebLogic user, unless it was changed during the installation process).
- Select Deployments from the Domain Structure list.
- On the bottom-right side of the page, select b2bui from the Deployments list (as shown in the following screenshot).
- On the next page, click on the Targets tab.
- Select the Component checkbox to enable the Change Target button.
- Click on the Change Target button.
- Select the AdminServer checkbox and click on the Yes button.
- Click on the Activate Changes button.
- Click on the Deployments link in the WebLogic domain structure. The B2B user interface is activated.
If the SOA Suite production configuration was chosen, these steps are no longer necessary. However, you must first configure Node Manager. To do that, execute the setNMProps script and start Node Manager.
Oracle B2B web components
Oracle B2B Gateway is deployed as part of the Oracle SOA Service Infrastructure, or SOA-Infra. SOA Infrastructure is a Java EE compliant application running on Oracle WebLogic Server.
- Java EE compliant application: It is a wrapper around web applications and Enterprise Java Bean (EJB) applications
- Web Application: It usually represents the User Interface Layer, and includes Java Server pages (JSP), Servlets, HTML, and so on
- Servlet: It is a a module of Java code that runs as a server-side application
- Java Server Pages (JSP): It is a programming technology used to make dynamic web pages
- WAR archive: It is an artifact for the web application deployment
- Enterprise Java Beans: These are server-side domain objects that fit into a standard component-based architecture for building enterprise applications with Java
- EJB application: It is a collection of Enterprise Java Beans
The following table shows a list of B2B web components installed as part of the SOA Infrastructure application. They include an enterprise application, several EJBs, a web application, and a web service. The B2B web application provides a link to the B2B Interface. The B2B MetadataWS Web Service provides Oracle SOA Service Infrastructure with access to the metadata repository. Stateless EJBs are used by the B2B Engine. This table might be helpful to understand how Oracle B2B integrates with Oracle SOA Suite. It could also be useful while developing B2B high availability architecture.