SOA Suite 11gR1 has a provision for sharing SOA artifacts through MDS – Meta Data Store. This facilitates greater re-use of SOA artifacts such as XML Schemas, EBMs, WSDLs, Fault Policies, Rule repositories and Service Data Objects (SDOs) among others. MDS can be file-based or database-based. Here are the steps to create and use file-based MDS in JDeveloper.
MDS is created under <jdeveloper-home>/integration/seed directory. Default folder “soa” is used to store common system soa artifacts. All custom artifacts are supposed to be stored under a folder called “apps”, since this folder already exists in server.
Create directory structure under apps folder. In this example, I’ve created folder structure ../apps/com/wordpress/orafmw/training/xsd to store XML schema files. This ideally should match your schema structure.
In JDeveloper, expand Descriptors/ADF META-INF and open adf-config.xml.
Create an entry for metadata store location.
<namespace metadata-store-usage=”mstore-usage_1″ path=”/soa/shared”/>
<namespace metadata-store-usage=”mstore-usage_2″ path=”/apps/com”/>
Specify MDS storage location.
<property value=”D:\PROGRAMS\OracleMiddleware11g\jdeveloper\integration” name=”metadata-path”/>
<property value=”seed” name=”partition-name”/>
Use defined artifacts directly from MDS.
Deploy MDS Repository to Weblogic Server
First, we need to create JAR file bundle to include schemas we need. Then we need to include this jar file into a SOA bundle that can be deployed to the SOA Server.
Create Generic Application – MediatorMetaData
Create a project – MediatorLib
Right click on MediatorLib and select New –> Deployment Profile –> JAR File
Enter mediatorlib as the deployment profile name.
In the JAR deployment properties dialog, click on Contributors, click on Add button and select apps directory from JDeveloper seed location – <jdeveloper_home>/integration/seed/apps.
Click on Filters and select the schemas you would like to be deployed.
Click on OK. This completes creation of JAR file. We now need to create an application deployment profile to install these schemas in SOA Server.
Right click on MediatorMetaData application and select Deploy –> New Deployment Profile. Select “SOA Bundle” as Profile type.
Enter mediatorlib for Deployment Profile Name. From the properties dialog, open Dependencies and select mediatorlib.
To deploy MediatorLib to SOA Server, right click on MediatorMetaData and select Deploy –> mediatorlib.