This chapter describes how to provide greater visibility into the services that are available from the SAP application and platform by integrating SAP with Oracle Enterprise Repository, from a SOA Governance perspective.
This chapter includes the following sections:
A key goal of SOA Governance is to provide visibility and control across the different services across multiple packaged and custom applications built on different development platforms. SAP provides both the SAP packaged application as well as the NetWeaver middleware platform. The primary goal is to provide visibility into services that are available from the SAP application and platform. These services are consumed or reused as part of development of new composite applications, and used by Oracle Service Bus to generate proxy services for SAP business services.
SAP Enterprise Service Registry deploys the service into the SAP UDDI client, from where the Oracle Enterprise Repository-Exchange Utility connects and receives the service assets. Figure 12-1 describes the integration with the SAP Enterprise Registry and Oracle Enterprise Repository.
Each time a new service is published in SAP, you can sync these to its corresponding service assets created in Oracle Enterprise Repository. You can also sync the ongoing service updates in SAP with the corresponding assets in Oracle Enterprise Repository. This sync can be done by running the Exchange Utility manually. Then, you can consume the SAP assets like any other assets in Oracle Enterprise Repository.
Prior to configuring SAP with Oracle Enterprise Repository, ensure that the following prerequisites are met:
The SAP Repository and SAP UDDI Registry should be configured.
The SAP Environment should be configured.
This section describes the detailed use cases for providing visibility in Oracle Enterprise Repository to services from the SAP application as well as the NetWeaver platform, and allowing those services to be consumed through IDEs, including JDeveloper, Eclipse and VS .Net.
This section contains the following topics:
Section 12.3.1, "Aligning the Taxonomy Between SAP and Oracle Enterprise Repository Assets"
Section 12.3.5, "End User Visibility of Available SAP Services"
To align the taxonomy between SAP and Oracle Enterprise Repository assets:
Open the UDDIMappings.xml file in the XU folder. You must configure the Oracle Enterprise Repository XU mappings file according to the SAP registry.
Scroll to the bottom of the file to find the section <tmodels> and modify the tmodelkey
attribute values as follows:
<tmodels> <keyedReference tModelKey="uddi:bea.com:aleruuid" keyName="bea-com:aler:uuid" /> <keyedReference tModelKey="uddi:example.com:internalname" keyName="oracle-com:oer:internalname" /> <keyedReference tModelKey="uddi:example.com:version" keyName="oracle-com:oer:version" /> </tmodels>
Save and close the UDDIMappings.xml file.
To export the selected SAP service assets from SAP Enterprise Service Registry to Oracle Enterprise Repository, perform the following steps:
Bootstrapping Oracle Enterprise Repository with services from SAP. This brings the initial load of SAP services into Oracle Enterprise Repository.
Configure orrxu.xml for Oracle Enterprise Repository and SAP UDDI connection settings.
Configure the XU receive query <registryQuery> as
<services> <service name="%"/> </services>
This would bring an initial load of all valid services available from SAP UDDI to Oracle Enterprise Repository. It should create service assets and its associated artifact assets in Oracle Enterprise Repository.
Note:
Currently, you can accomplish this by running the Exchange Utility only from the command prompt.
Each time a new service is deployed into SAP UDDI, it can be received into Oracle Enterprise Repository by running the Exchange Utility tool. After an initial load of services is created in Oracle Enterprise Repository, the Exchange Utility can be run either periodically or each time a new service is published in SAP UDDI.
If you know the service name that is created in SAP, then you can configure the receive query, <registryQuery>
, to provide service name to receive the service. Alternatively, you can run the query as service name=”%”
to create new service assets in Oracle Enterprise Repository and also re-sync the existing services in Oracle Enterprise Repository with SAP.
Each time a service is modified in the SAP UDDI, the updates must be synced to its corresponding service assets created in Oracle Enterprise Repository. You can achieve this by running the Exchange Utility from the command-line.
You can periodically run Exchange Utility by using the wild character query for <registryQuery>
as service name=”%”
to re-sync the existing services in Oracle Enterprise Repository with SAP and create new service assets in Oracle Enterprise Repository.
Note:
Currently, you can accomplish this by running the Exchange Utility only from the command prompt.
After the SAP services are in Oracle Enterprise Repository, you can search and consume the SAP services from the IDE and consume SAP assets from Oracle Enterprise Repository Web console like any other asset in Oracle Enterprise Repository.
Figure 12-2 describes the image of a SAP asset as it appears in Oracle Enterprise Repository.
Figure 12-2 SAP Asset in Oracle Enterprise Repository
For more information about searching and consuming services from the IDE, see Section 11.1, "Using Oracle JDeveloper".