Oracle released SOA Suite 12c (12.1.3) bringing a further integration between components and a bunch of new features. This blog is one in a series of new features summaries about SOA Suite 12c to view them all check this blog.
This blog will summaries the features specific to Service Bus and the Enterprise Manager Dashboards. The features are summarised, but most will get an own blog that tells about the full details. Oracle renamed the product from OSB (Oracle Service Bus) to SB (Service Bus), apparently it also stands for Oracle Secure Backup.
Disclamer: Screenshots are made in Beta version of SOA Suite 12c, so may differ in final version!
Integrated with JDeveloper
Service Bus is now integrated in JDeveloper, so no Eclipse anymore as default IDE. Since I mentioned the integration in the Developer Productivity blog of this series I won’t go into the details again, but there are still some things to mention. The development of a Service Bus application uses its own Application workspace and it is not possible to combine SOA and Service Bus projects in one application workspace. When creating a SB project you can create it together with a Service Bus Application or on its own.
After creating a SB project you will notice the new overview.xml. The overview of a SB project is similar to a SCA Composite, but is not, it is just a placeholder file to open the Project overview edit.
Splitting Proxy from Pipeline
Because a SB project is more like a SCA Composite (same overview) the Proxy is split from the Pipeline. This means that the Proxy and the Pipeline are two individual things. With this concept multiple Proxies can be wired to one Pipeline. Say you have a “Any XML” Pipeline, you can process the data from both Proxies (i.g. File adapter and JMS Queue). It is also possible in the IDE to wire a pipeline to a pipeline directly or create a business service from a proxy.
Create a REST service based on a Pipeline
One of SOA Suite 12c’s pillar is Mobile Enablement. You can expose a Pipeline as a REST service. When doing it creates a REST binding just like in a SCA Composite. In the wizard you can assign specific Resource Paths and Operation for the operations of the Pipeline. Downside is that you can only expose Pipelines that have a WSDL interface.
Kick-start an Service Bus (SB) project using templates
Just like SOA Suite’s SCA Composites the SB also supports the use of templates. But it works a little different. Templates are Pipeline-based, this means that you can select a template when creating a new Pipeline. There are two types of templates; Unlinked, which is a copy of the template, and Linked, Pipeline stays connected to template. In the template you can use Placeholders so permit changes to that part of the Pipeline. If the Pipeline is linked to a template and the template is changed the linked Pipeline will inherent these changes. You create a template pipeline, instead of a normal Pipeline and place it in a centralized project or in the MDS for re-use.
Service Bus uses new Component and Properties palettes
Just like SOA (SCA Composite) Service Bus uses the new Component and Properties Palette. It displays as it were, all the steps in the wizard or tabs of the dialog window of a component. Instead of editing the component using the wizard you can now use the Properties palette to make changes.
MDS support for importing shared resources (limited)
Service Bus has now Design-Time support for MDS (MetaData Services). In my opinion it is the reason why it is limited. You can select resources from the MDS that you want to import into your SB project. Service Bus can’t connect to a Remote MDS on runtime. This choice is made, because SB can be installed separate from SOA and SB doesn’t have there own DB repository for saving MDS artifacts.
Dynamic Validation Activity
SB 12c updates the Validation Activity. It is now possible to Dynamically validate a variable. Using Expressions you should return a fully qualified type or element reference (i.g. {http://www.example.com}inventoryRequest). Besides the Dynamic validation you also have the option to save the validation result to a variable or to raise an error (behavior in 11g).
Disable Activities
In SB 12c it is possible to disable activities. This can be handy if you want to skip activities, but do not want to remove them. Every activity can be disabled in Design-Time, but also on Run-Time using the Service Bus composer. In JDeveloper you can disable activities by right-clicking on the activity and selecting Disable or by clicking on the disable icon in the Properties palette (see image above).
Test expressions on Design-Time
An other Developer feature in 12c is the possibility to test expression on Design-Time. When working in the Expression Builder you can click on the Test Expression icon to test the expression. JDeveloper will deploy a small artifact to the Design-Time environment of SB and start a small browser window where you can test the expression.
SB Debugger
Just like SOA (SCA Composite) Service Bus has a debugger. It works the same as the SOA debugger. There will be coming a separate blog about the SOA and SB debugger, but below a first impression how it looks.
Enterprise Manager
The Service Bus console has found a new home with the switch to JDeveloper. Most functionality is moved to the Enterprise manager. Because it is a lot of information there will be separate blogs to discuss all the features and because it is just to much to summaries hereby a short impression below.
More more more
There are a lot more features in Service Bus. My esteemed colleague Lucas Jellema (Oracle ACEd, CTO AMIS) has written a series of Service Bus blogs which will be published in coming day(s).
- Using Domain Value Map (DVM) in Service Bus projects
- Sharing resources between SOA composites and Service Bus projects with Design Time MDS
- Where to find Service Bus Message Reports
- Where to find Service Bus Pipeline Alerts
- Disable/Enable Activity to ease development
- Native Format Translation in Service Bus Pipeline
This blog may be updated if other cool features are discovered.
For full coverage check the other first look blogs.
Good one. very helpful..
Great article.. Thanks for sharing. 🙂