Showing posts with label AIA201. Show all posts
Showing posts with label AIA201. Show all posts

Monday, July 12, 2010

Deploying Oracle BRM JCA Adapter for Oracle AIA

This particular post would be useful for those working on Oracle SOA Suite 10g and having the stack Siebel, AIA and BRM. In the stack where there is Siebel, AIA and BRM, AIA invokes BRM through the JCA Adapter. This JCA Adapter is provided by the BRM Team. The JCA Adapter is responsible for converting the xml given by AIA to the input flist of BRM. The JCA Adapter also does a basic field level validation of the input xml with the opcode being called. This JCA Adapter is deployed in the middleware layer, using the Oracle SOA Suite’s EM Console.

Please do the following to deploy the JCA Adapter:

  1. Modify the application.xml: Go to $ORACLE_HOME/j2ee/$OC4J_CONTAINER/config and Modify the imported-shared-libraries to contain the oracle.bpel.common library also. Modify the imported-shared-libraries to contain the below entry:

    <import-shared-library name="oracle.bpel.common" />

    The imported-shared-libraries after the change will look as below:

    <imported-shared-libraries>
    <import-shared-library name="adf.oracle.domain" />
    <import-shared-library name="oracle.bpel.common" />
    </imported-shared-libraries>


  2. Deploy the JCA Adapter: Get the latest JCA Adapter from BRM, go to EM Console and navigate to oc4j_soa. Go to Applications tab, select Standalone Resource Adapters from the View drop down option and Choose Deploy, to deploy the BRM JCA Adapter. While deploying if the JCA Adapter is placed on the server directly, choose the option of location as Location on Server or if the JCA Adapter is present in the workstation, choose the option of browsing the file from the workstation. Choose Automatically create a new deployment plan option (Step 1/3), choose next, give a name for the Resource Adapter (Step 2/3) and make no changes in the Deployment Settings tab (Step 3/3). Click Return on successful deployment of the adapter.
  3. Create Connection Factory: Click on the JCA Adapter that was just deployed from Standalone Resource Adapters. Click on Connection Factories tab (need to create a Shared Connection Pool before we define the Connection Factory). So, click on Create option under Shared Connection Pools to create one. Create a connection factory using the shared connection pool that has been created. In JNDI Location, issue eis/BRM, choose Use Shared Connection Pool under Connection Pooling and change the Connection String to ip $BRMIPAddress $BRMPort, Username and Password of the BRM user that SOA Suite will use.
  4. Restart JCA Adapter: Stop the JCA Adapter by navigating to Standalone Resource Adapters and choosing the adapter.  Once stopped, start the JCA adapter from the same location.

Peace !

Cheers,
- AR

Sunday, June 28, 2009

Oracle AIA 2.0.1

Oracle Application Integration Architecture (AIA) is one of the most widely discussed topics when it comes to middleware integration on Oracle stack using webservices/SOA. I have actually enjoyed the experience working on Oracle AIA. Though there has been many challenges and pain points (when it comes to pain points, I have to accept that every product has some pain points and this in nothing special about AIA), I was actually thinking about the work that has gone into building this product. This is no simple work, and no one can claim it’s not a big deal. Its indeed a big deal. With Oracle AIA, a customer can look at hitting the market in 6 months provided his IT system has to align with Oracle principles (if not a few customizations might be required). It has changed the approach/face of middleware integration.

I have been involved with two PIPs of AIA,  Order To Bill (O2B) and Agent Assisted Billing Care (AABC). I will detail what these PIPs do in my further posts. I was very impressed with the organization of the PIPs and of course, the canonical data model artifacts (EBO, EBM and EBS). They have been designed based on standards, and sometimes I wonder how long it would have taken to bring about such an organized structure, version them and provide options of extending them as per the customer’s requirement. It’s easy to say that given a year time, any service vendor or telco company can develop this kind of product. No it’s not. We know how difficult it is to even maintain a small piece of code, standardize it and project it as a product.

Purists would definitely not agree AIA is indeed a revolution. I found that there were lot of business cases/logic handled within AIA, which if it had to be developed would consume enormous amount of time. As we were using some custom bpel/esb integration on top of AIA, we already had a base on which we had to fit these entities and a reference architecture which we could adhere to. I should say AIA either makes your life easy or hell ! If there customer requirements which require you to customize AIA, life is hell. I had a tough time in understanding the AIA code and make changes.

The major drawback would be the documentation/support for groups on AIA. In my company, we did not have a forum for AIA as this was something new and we had to refer to external blogs. No documentation of AIA at the code level meant, you were back to school, learn by self. Of course, Oracle had documented business processes in their different implementation guides, which proved useful to an extent (till you need to understand what AIA is, but not for customizing AIA.

Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported License