Posted by: Sven Bernhardt, Danilo Schmiedel
The Oracle SOA Suite and Oracle Business Process Management Suite offers different domain configuration types applicable for different use cases. For details check out the two guides: Installing SOA Suite and Business Process Management Suite Quick Start for Developers as well as Installing and Configuring Oracle SOA Suite and Business Process Management.
|Default Domain||Standalone Domain||Compact Domain||Full Domain|
|Description||Integrated WebLogic Server from JDeveloper||Standalone Admin Server with SOA/BPM||Standalone Admin Server with SOA/BPM||Full installation with separate servers for SOA, OSB, BAM, Admin Server, etc.|
|Installed via||Quick Start distribution||Quick Start distribution||Quick Start distribution||FMW 12c Infrastructure +
FMW 12c SOA Suite and Business Process Management
|Used for||Local development and debugging, especially for demos or evaluation purposes||Local development and debugging, especially for developers who want to use the Oracle Service Bus Design Time Console instead of JDeveloper||Local development with SOA components that are incompatible with JavaDB (ESS, MFT, B2B, Heathcare, BAM, ACM API)||All stages Development (shared), Integration, Test, Production|
|Repository||Pre-configured Java DB||Pre-configured Java DB||Oracle Database (please note that MDS and OWSM are file-based)||Oracle Database|
For all of the domain options which are installed via quickstart distributions, SOA and B2B use the MDS file system. This means that the edit function in SOA Composer is not supported and so Business Rules and Domain Value Maps cannot be changed during runtime & without a new deployment . For the development in our projects we very often use the compact domain. The change of business rules without re-deployment is quite important for us because we work a lot with Adaptive Case Management – and there Business Rules and live changes without re-deployment are a key benefit (which we also like to show in demos / POCs / etc.).
This post concentrates on the compact domain and its re-configuration of the underlying MDS setup, so that a DB-based repository is used instead of a File-based one. After going through the steps below it should be possible to edit rules and DVMs during runtime.
The following steps should only be applied to a fresh & clean compact domain without any composite deployments and instance data. The following approach is not documented in the Oracle documentation, which means that it is not officially supported.
- Check if your SOA database already contains a MDS schema. If not, use RCU to create schemas in the new repository, as described in Administering Oracle Fusion Middleware.
- Start WLST (\soa\common\bin) and connect via WLSTconnect
- Export current content of SOA-MDS (file-based MDS)
exportMetadata(application='soa-infra', server='AdminServer', toLocation='[YOUR-EXPORT-DIR]', docs='/**')
- Shutdown soa-infra via WLS Console
- Deregister the file-based MDS
- Open EM and right-click your domain under Weblogic Domain > Other Services > Metadata Repositories
- Select mds-soa under „File-Based Repositories“ and click on Deregister
- Please note: If you try to deregister from another page or context, you’ll receive the following error message:
„The selected repository mds-soa cannot be deregistered from within the context of itself. Select domain node from the navigation tree and deregister the repository from the Metadata Repositories page.„
- Register a new DB-based Repository
- Delete existing mds-soa datasource before from WLS Console > Data Sources
- Open EM and right-click your domain under Weblogic Domain > Other Services > Metadata Repositories and select Register under „Database-Based Repositories“
- Enter the connection details appropriate to your MDS-schema
- Create a new Repository Partition and name it soa-infra
- Use WLST to import exported metadata into the new MDS-Partition
importMetadata(application='soa-infra', server='AdminServer', fromLocation='[YOUR-EXPORT-DIR]', docs='/**')
- Restart the server
- Check connection between soa-infra application and the new metadata repository (MDS-SOA, Right-click EM Domain Home -> Other Services ->
Metadata Repositories > soa-infra > Applications)
- Open BPM Composer and check if any errors are displayed when using it
- Check SOA Composer for having „Create Session“ Button
If these tests are successful: Congratulations! Your domain is ready to use a DB-based MDS repository for soa-mds.
Pingback: Soa 12.2.1 Feature – Patching Running instance of Composites | Thoughts on Oracle Fusion Middleware