Skip to main content

Oracle ICS & Oracle SOA

Hello Everyone,

I came up with few blog over Oracle ICS and after reading those blog, I reached on a point that Oracle ICS is nothing just oracle child version of Oracle SOA BPEL, where you design BPEL orchestration for different type of orchestration and adapter implementation.

Oracle ICS is more brode in terms of adapter support as compare to oracle SOA, but it's light weight and have few limitation.

Lets first discuss about few difference between oracle ICS and oracle SOA:
  • What is oracle ICS and how it's differ from Oracle SOA:
    • ICS is equivalent of Oracle Service Bus on Cloud with few functionalities added whereas  SOA/SOA CS is a full blown functionality of Service orchestration
  • On permises integration support:
    • Integration Cloud Service has two agents:
      • Connectivity agent manages connectivity of on premise applications to ICS on Cloud.
      • Execution Agent which can be downloaded and configured on premise which is an ICS instance on premise (few adapters are restricted with ICS on premise).
  • When to go for ICS and when to go for SOA/SOACS ?
    • If the existing application foot print is more on Cloud then ICS is best suited for integrations.
    • In case of pure one premise integration, Go with SOA.
    • If the integrations are too complex and would require Human interventions in the form of approvals etc., event processing, Single Sign on support.
    • If the amount of data transfer involved is large as ICS restriction of messages per    connection is 100000/day.(Note that ICS connection will not reject a message after 100000).


Now let us talk more about oracle ICS:
Oracle Integration Cloud Service simplifies how you build integrations in the cloud, letting you connect securely to applications and services both in the cloud and on-premises.

Oracle Integration Cloud Service (ICS) is a new Oracle Cloud Service that allows for easy integration between cloud or on-premise systems. The various pre-built adapters allow for easy endpoint configuration so that the integration developer can focus on the integration logic. Custom adapters can be built for non-standard integration endpoints.
ICS can be accessed from the URL below, where identity domain is how Oracle groups the various cloud services purchased in the subscription. 
So what's all implementation(Integrations)provide by oracle ICS and when to choose correct one:

Integrations are the main ingredient of Oracle Integration Cloud Service. An integration includes at the least a trigger (source) connection (for requests sent to Oracle Integration Cloud Service) and invoke (target) connection (for requests sent from Oracle Integration Cloud Service to the target) and the field mapping between those two connections.


ICS has four integration pattern:
  1.  Map my Data (Point to Point mapping between two service)
  2. Orchestration (Condition based activity orchestrating different systems)
  3. Basic Publish to ICS
  4. Basic Subscribe to ICS
Let us talk about all of them in detail:
  1. Orchestration: Create a synchronous, asynchronous, or fire-and-forget orchestrated integration in Oracle Integration Cloud Service that uses Oracle BPEL Process Manager capabilities. Orchestration integration features include the following:
    1. Switch activities to create multiple routing expressions.
    2. For-each activities for looping over repeating elements.
    3. Assign activities for assigning values to scalar variables.
    4. Ad-hoc mappings on switch branches.
    5. Callback activities (to end a process and respond back to the sender) and end activities (to end a process without responding back to the sender) in asynchronous integrations.
    6. Schedule-based integrations
  2. Map Data: Create an integration with a blank trigger and invoke in which to add your own adapters. You can also create a single routing expression and request and response enrichments, as needed. You cannot create multiple routing expressions. If your integration requires this feature, create an orchestrated integration.
  3. Publish to ICS: Create an integration in which you add a trigger adapter to publish messages to Oracle Integration Cloud Service through a predefined Oracle Integration Cloud Service Messaging invoke. No configuration of the invoke subscriber is required.The publisher and subscribers participating in this integration pattern can be activated and deactivated independently of each other.
  4. Subscribe to ICS: Create an integration in which you add an invoke adapter to subscribe to messages from Oracle Integration Cloud Servicethrough an Oracle Integration Cloud Service Messaging trigger. You are prompted to select the publisher to which to subscribe. You must have already created a publisher to which to subscribe. The publisher does not need to be active, but must already be completely configured.
    Any business identifiers defined on fields in the published integration are copied to the subscriber. Any changes made to the published integration’s business identifiers after copying are not reflected in the subscriber. The publisher and subscribers participating in this integration pattern can be activated and deactivated independently of each other.
How to use an ICS integration: ICS integration is a Web Service which can be called by any application with capability to call web service (like JCS, Java Application, SOA etc.). ICS Integration can be scheduled to do an    activity at a specific point of time in case of File Transfer integrations.




Here are few nice articles about Oracle ICS Publish to ICS and Subscribe to ICS:
http://blog.rubiconred.com/oracle-ics-and-twilio-publish-subscribe-integration-pattern/
https://cloud.oracle.com/opc/paas/ebooks/Oracle_Integration_Cloud_Service.pdf

Comments

  1. It is very good blog and useful for students and developer .
    Oracle SOA Online Training Bangalore

    ReplyDelete
  2. Great read! Thank you for such useful insights. Visit here for latest tech courses on Oracle ICS Training

    ReplyDelete
  3. Wonderful article. I’m satisfied that you simply shared this helpful information with us. Thank you so much.
    ics online coaching

    ReplyDelete
  4. This was an amazing blog. It had all the relevant information. Thankyou for sharing it. Here is a referred blog that I have found same as yours oracle fusion hcm training. Actually, I was looking for the same information on internet and i found your blog quite interesting and relevant.

    ReplyDelete
  5. Great read! Thank you for such useful insights. Visit here for advanced technical courses on OICS ONLINE TRAINING

    ReplyDelete
  6. Thanks for sharing this great information I am impressed by the information that you have on this blog. Same as your blog i found another one Oracle SOA . Actually I was looking for the same information on internet for Oracle SOA and came across your blog. I am impressed by the information that you have on this blog. It shows how well you understand this subject, you can learn more aboutOracle SOA . By attending Oracle SOA Training .

    ReplyDelete

Post a Comment

Popular posts from this blog

Oracle SOA 12C rest adapter with Custom HTTP headers

Most existing web applications are connected through web services, which are commonly known as SOAP services. More and more users are relying on mobile devices for communication, and they’re looking for lighter ways to access enterprise information on the go. REST services are the answer for the mobile device platform, because they get rapid responses and fast access to data. Oracle SOA Suite 12 c  provides a complete set of service infrastructure components for designing, deploying, and managing composite applications. Oracle SOA Suite 12 c  enables services to be created, managed, and orchestrated into composite applications and business processes. Some time we have need to send HTTP headers in REST service, In OSB we use header component and add what ever is needed but in oracle SOA 12C it's little bit different. Let see how we can do it. Create one SOA Application. Create one SOA Sample project inside SOA Application. Go to composite and drag drop REST adapt

Dynamic Routing in OSB 12C

Dynamic Routing in OSB cab be used when the BusinessService endpoint required to be determine at runtime in message flow. Consider a scenario where OSB has to route the incoming requests to 2 different services based on the CustomerType element value sent in the payload. So create a XQuery resource with the following contents. Observe that we are using the absolute path of business service in configuration as required by dynamic routing. Following is the XML schema that we use:>>  Customer.xsd <?xml version="1.0" encoding="windows-1252" ?> <xsd:schema targetNamespace="http://xmlns.oracle.com/schema/Customer" xmlns:xsd="http://www.w3.org/2001/XMLSchema"             xmlns:ns1="http://xmlns.oracle.com/schema/Customer">   <xsd:complexType name="Customer">     <xsd:sequence>       <xsd:element name="CustomerId" type="xsd:string"/>       <xsd:elemen

Swagger API document from Any WADL & Schema in Oracle SOA

Hi everyone, Hope everyone is doing well these days, Recently i started a project work over how to generate swagger API document for your any REST API, In case if you don't know what is swagger please go and check " https://swagger.io/tools/swagger-editor/ ". It's a great and easy to use tool which will help to create user friendly, human readable form API documentation with extension for generating API client in different languages with capability of testing your API from same. What is swagger editor, Design, describe, and document your API on the first open source editor fully dedicated to OpenAPI-based APIs. The Swagger Editor is great for quickly getting started with the OpenAPI (formerly known as the Swagger Specification) specification, with support for Swagger 2.0 and OpenAPI 3.0.  What benefits you will get by using swagger, Runs Anywhere, The Editor works in any development environment, be it locally or in the web. Smart Feedback, Validate you