Oracle has announced the General Availability release of its long anticipated Oracle SOA Suite 12c. This release includes a number of enhancements and features over the reliable and stalwart 11g version. The new features cover the entire spectrum from user experience, integration, performance, scalability, management, mobile, cloud and many more impressive and very useful features for developers and administrators alike.
In this article we'll discuss a few of the new features related to enhanced developer productivity.
SOA Quick Start – a complete integrated out-of-the-box developer package, which includes the following tools in a single installation package:
This developer-centric package will dramatically reduce ramp-up time for those new to Oracle SOA Suite 12c, by allowing them to focus on development tasks and not installation and integration tasks. This installation should not be used for anything more than a stand-alone developer environment. While it provides the typical features and capabilities a developer would need to develop composite applications, it is not an Enterprise deployment. Furthermore, JDeveloper, SOA Suite, and Oracle Service Bus are fully functional; however, the Integrated WebLogic Server instance has limited capabilities compared to a full WebLogic Server instance. In addition, the JavaDB for the Metadata Repository will not provide the scale and performance comparable to an Oracle database. Installation of the package is straight-forward.
1. Download the package from OTN
2. Ensure you have a supported JDK installed (Review the FMW 12c Certification Matrix for supported configurations)
3. Unzip the SOA Suite download package and execute the following command from the extracted directory using the command line
a. %JAVA_HOME%\bin\java -jar fmw_18.104.22.168.0_soa_quickstart.jar
4. Follow the installation wizard
Integration of the Oracle Service Bus development into JDeveloper. JDeveloper 12c replaces the Eclipse OEPE (used with OSB 11g) as the IDE for OSB 12c development. OSB development now also uses similar terminology and layout as the SOA Suite SCA composite application development. The following terminology changes have been made in the updated OSB development environment:
This will provide a more consistent & standardized development environment between SOA Suite and OSB and reduce confusion with terminology and development tools.
SOA Suite SCA Composite templates provide a jump-start for developing a SCA composite application and will allow you to easily add reusable components or activities to an existing composite application. You can create and apply templates at three levels within a composite application:
A template contains all the configurations and dependencies, including PartnerLinks, and can be easily edited before or after being applied. Once the template is applied to the composite application or BPEL component, it becomes part of the composite or component. The template will be packaged and deployed along with the composite or component. Creating a template is as easy as right-clicking the project, component or activity and selecting the ‘Create Template’ button.
Oracle Service Bus templates are also supported in Oracle SOA Suite 12c. They are similar to SOA Suite SCA composite templates but with minor differences. OSB templates are created at the pipeline level and can be either linked or unlined. Unlinked templates (similar to SOA Suite SCA templates) are copied into the OSB project. With a Linked template, the pipeline stays connected to the centralized template. OSB templates employ the concept of placeholders to allow for changes to the pipeline - if a linked template is used and the template is changed, the pipeline will inherit the change from the template. This provides a great opportunity to create and store templates in the MDS or a centralized project for reuse across your OSB projects.
BPEL sub-processes provide a mechanism for reusing BPEL code within a BPEL process. A BPEL sub-process can be described as a unit of encapsulated logic that can be called zero to many times within a BPEL process. It is analogous to a private member function in Java or a procedure in a PL/SQL package. BPEL sub-processes can be considered a callable scope, though not part of the normal process flow as a typical scope would be. BPEL sub-processes will improve performance by rendering only the entity being called at the time and also enable a modular approach to managing BPEL processes. The two types of BPEL sub-processes are:
As you can see from this article, Oracle SOA Suite 12c introduces some very useful features to support productivity, reuse, and modularity across the development environment. This article is meant to provide a high-level summary of some of the more important features in this area and just scratches the surface. You can refer to the Oracle Fusion Middleware 12c Developer documentation for more detailed information on each of the topics covered in this article. Look for upcoming articles highlighting additional new and enhanced features of Oracle SOA Suite 12c, including: