Get Even More Visitors To Your Blog, Upgrade To A Business Listing >>

Using APIs to Enable Application Integration with Informatica MDM System

Services Integration Framework (SIF) is used to integrate the Informatica MDM with custom applications. This integration requires prior working knowledge of Mdm Hub and familiarity with Java and APIs. This article explains how to perform application integration with Informatica MDM using their given APIs.  You can use the Services Integration Framework (SIF) to invoke the MDM Hub operations from external applications in real time. It utilizes service-oriented architecture that offers application integration functionality in the form of services to other applications. You can also configure the SIF for the MDM Hub to interact with the client software. SIF functions as the intermediary, or middle tier, in the client-server model. You can use SIF access protocols to implement the request and response interactions. Note: Private resources are accessible only to admin users via SIF requests. Services Integration Framework (SIF) offers the following services and events: Process services are integration processes and people-to-system processes. For example, in a customer domain, the process services include activities such as verifying customers and approving customers. Business events are rule-driven events and actions based on business logic. For example, you might evaluate the impact of a new relationship. In the data model, business services operate on base objects. For instance, you can retrieve a customer base object or create one in a customer domain. Data services act on records in the tables. You can retrieve a record, insert a record, or update a record. Data events are events that affect master data or source data. For example, a customer’s last name changes in a source record or an address changes in a master record. SIF requests can directly communicate with one other. Data services can interact with data events, process services with data services, data services with business services, and data events with process services. You can utilize the SIF SDK to develop Java apps and web services that communicate with the MDM Hub. The SIF SDK offers tools necessary for building and deploying SIF application integration. Moreover, it also includes sample codes to develp web services and a series of Java classes to create services.  Similarly, many developers use the SIF SDK to build client services, data objects, GUI controls, and business services for the development and delivery of web-based and rich-client applications. The MDM Hub Resource Kit installer comes with the SIF SDK. You can easily find the directory structures, libraries, online documentation for SIF, and build files in the following directory:  \hub\resourcekit\sdk\sifsdk Any client machine where you intend to create and run programs to communicate with the MDM Hub should be copied with the SIF SDK. You can use the Java classes that come with the SIF SDK if you can run a Java virtual machine (JVM) on the client system.  You can use the following access protocols for the SIF request and response interactions: The access protocol runs on top of the native MDM Hub protocol, which accepts requests in the XML or EJB format and returns responses in the same format. You can also use the SiperianClient proxy in a Java development environment to manage the communication protocol for the SIF requests. Here’s an image that shows how SIF processes the request and response communications:   The SIF SDK is packaged with the MDM Hub Resource Kit installer. You can use the MDM Hub Resource Kit installer to install the SIF SDK and SIF API reference documentation. Once you have installed the Resource Kit, you can find the libraries, directory structures, build files, and SIF API reference documentation in the following directory:  \hub\resourekit\sdk\sifsdk. Use the sample .project  file that is part of the SIF SDK to create a sample Eclipse client. 1. In the Eclipse IDE, import the sample .project file located in the      \hub\resourcekit\sdk\sifsdk directory into your Eclipse workspace. 2. Identify the missing library JAR files that are specific to the application integration server and add them to the build class path. The sample .project file requires the library JAR files to set up the proper Java build path. 3. You have to tailor the following files according to your environment: After setting up an Eclipse client, the code be developed now to interact with the MDM Hub. For example, create a class and add the following sample code that uses the SearchQueryRequest and SearchQueryResponse classes to retrieve records: import java.io.File; import java.util.ArrayList; import java.util.List; import com.siperian.sif.client.SiperianClient; import com.siperian.sif.client.SoapSiperianClient; import com.siperian.sif.message.Parameter; import com.siperian.sif.message.Record; import com.siperian.sif.message.mrm.SearchQueryRequest; import com.siperian.sif.message.mrm.SearchQueryResponse; public class SearchQuery {     public static void main(String[] args) {         File file = new File(“E:\\siperian-client.properties”);         System.out.println(“Reading File:” + file.getAbsolutePath());         if (!file.exists()) {             System.out.println(“***ERROR -> Properties File does not exist in location – “);             return;         }         SoapSiperianClient sipClient = (SoapSiperianClient) SiperianClient.newSiperianClient(file);         SearchQueryRequest request = new SearchQueryRequest();         request.setRecordsToReturn(5);         request.setSiperianObjectUid(“BASE_OBJECT.C_PARTY”);         request.setFilterCriteria(“C_PARTY.FIRST_NAME =?”);         ArrayList params = new ArrayList(2);         params.add(new Parameter(“3333”));         request.setFilterParameters(params);         SearchQueryResponse response = (SearchQueryResponse) sipClient.process(request);         List records = response.getRecords();         for (Record record : records) {         System.out.println(“Period Start Date: ” + record.getField(“PERIOD_START_DATE”).getDateValue().toString());         System.out.println(“Period End Date: ” + record.getField(“PERIOD_END_DATE”).getDateValue().toString());     } } } Run the sample class as a Java application once you have created a class. To run the sample class as Java application, in the Eclipse IDE, right-click the sample class, and select Run As -> Java Application. The Console View displays the output. A set of request and response objects is necessary for each operation that is performed using SIF. A The methods in a request object specify the action you wish to take on the MDM Hub, and the methods in a response object return the outcome of that action. A SIF class can represent a response object or a request object. A SIF class that represents a request object has a suffix of ‘Request,’ and a SIF class that represents a response object has a suffix of ‘Response.’ For example, the PutRequest class represents a request object, and the  PutResponse class represents the response to the PutRequest object. A request object includes methods that indicate the action that need to be performed on the MDM Hub. A SIF class that represents a request object is a subclass of the SiperianRequest  class and extends the SiperianRequest class. For example, the following sample uses the SearchQueryRequest object: SearchQueryRequest request = new SearchQueryRequest(); request.setRecordsToReturn(5); //Requiredrequest.setSiperianObjectUID(“PACKAGE.PARTY_ADDRESS_READ_PKG”);//Required request.setFilterCriteria(“PARTY_FULL_NAME LIKE ?”); The request runs the PARTY_ADDRESS_READ_PKG package, uses the PARTY_FULL_NAME LIKE filter criteria and returns no more than five records. A response object represents the response to the corresponding request object and includes methods that return the result of the action that you perform on the MDM Hub. A SIF class that represents a response object is a subclass of the SiperianResponse class and extends the  SiperianResponse class into it. For example, the following sample uses the GetOrsMetadataResponse object: GetOrsMetadataResponse getOrsMetadataResponse = (GetOrsMetadataResponse) sifClient.process(getOrsMetadataRequest ); System.out.println(“ORS Metadata (first line only): ” + getOrsMetadataResponse.getRepositoryXml().substring(0, 80));; We hope this article helps you understand the Services Integration Framework (SIF) APIs you can use to integrate an application with Informatica MDM.  In case you need further assistance, contact us at [email protected]. Xavor Corporation is a leading technology company based in Irvine, California. We are committed to help our clients with reliable software solutions.Subscribe to the newsletter for the daily dose of news, updates, tips and special offers© Copyright 2023 – Xavor Corporation All Rights ReservedFollow us:



This post first appeared on VedVyas Articles, please read the originial post: here

Share the post

Using APIs to Enable Application Integration with Informatica MDM System

×

Subscribe to Vedvyas Articles

Get updates delivered right to your inbox!

Thank you for your subscription

×