Apps To Fusion

.......Our Journey from Apps To Fusion

 
  • Increase font size
  • Default font size
  • Decrease font size



BPEL- Apps Business Event Integration- Part 4

E-mail
User Rating: / 0
PoorBest 
In the previous articles, we saw how jDeveloper connects to the R12 or 11.5.10 instance, so as to display the list of Business Events from the database. After our BPEL process gets deployed to BPEL server, then the SOA Runtime Server should also be able to connect to R12 or 11.5.10 database, so as to monitor the messages in Advanced Queue i.e. in WF_BPEL_Q. In this article, you will see the steps to make Apps Adapter running within SOA Server[Runtime ] to talk to Apps Database, so as to dequeue WF Event messages from BPEL Queue.
You will also see the deployment step in this presentation.

What are the steps required in SOA Server so that connection to Apps Database can be made by Apps Adapter?
1. Create the Connection Pool
2. Create a DataSource [ is attached to connection pool of previous step ]
3. Create the Connection Factory [ is attached to datasource of previous step ]


Before we proceed, lets recollect that when creating the Apps Adaptor in jDeveloper, we specified a JNDI Location for the database.
Please see the image below that displays the JNDI Name.


 

For Apps Adapter to work within SOA Server[Runtime], we will have to use exactly the same JNDI Name in "Connection Factory" as well.
This is visible from the presentation.

At the end of this presentation, you will be able to deploy your BPEL process into SOA Server.

There are two methods by which you can create connection factory for Apps Adapter within SOA Runtime [ SOA Server]

 

If you aren't able to view presentations in this article, then do the following
a. Download PowerPoint 2003 viewer from this link
b. Install PowerPoint 2003 viewer
c. Save the PowerPoint slide from this website on your PC
d. Open the PowerPoint side using the PowerPoint 2003 viewer that you have installed.

 

Method 1
Start the SOA Server, and then follow the steps given in the presentation below.

Click here to view the presentation detailing steps to create Connection Factory

 


Method 2
Change the XML File oc4j-ra.xml in SOA Server for the Apps Adapter, so that Apps database can be registered within SOA Server.

If your SOA Server is installed on linux/unix you might do

cd /oracle/SOA/APP2/oc4j_soa/application-deployments/default/AppsAdapter

 

In C Drive[PC], in my case, this is in C:\soa\10.1.3.1\OracleAS_1\j2ee\home\application-deployments\default\AppsAdapter
You may add text similar to below in bold
    <connector-factory location="eis/Apps/r124DBConn" connector-name="AppsAdapter">
        <config-property name="xADataSourceName" value="jdbc/r124DBDataSource"/>
        <config-property name="dataSourceName" value=""/>
        <connection-pooling use="none">
        </connection-pooling>
        <security-config use="none">
        </security-config>
        <connectionfactory-interface>javax.resource.cci.ConnectionFactory</connectionfactory-interface>
    </connector-factory>

Comments (10)add
...
written by Shiv@ , June 01, 2008
Hello Anil,

I have gone thru all of the 4 articles related to SOA/BPEL integration with EBS and i really felt happy which makes things easier to understand.
I really appreciate your hardwork. Here is my analogy of understanding on the configuration.
1. Connection Pool is the JDBC thin client connectivity information to the database from SOA. ( Alias to Tns Entry )
2. Data Source - Wrapper to the connection pool which becomes specific to our Bpel Process.
3. Connection Factory is the instance of this datasource used for an instance of the process.

Please correct me if i am wrong.

Thanks
Shiva
report abuse
vote down
vote up
Votes: -1
...
written by Anil Passi , June 01, 2008
Hi Shiva

Thanks - Very good explanation.

Cheers,
Anil Passi
report abuse
vote down
vote up
Votes: +1
Anil,
written by Sajid , June 03, 2008
Anil,
I am getting the below error message when I am trying to deploy my BPEL process after doing all the configuration you have explained
Any ideas what can be going wrong

Exception message is: ORABPEL-09903
Could not initialize activation agent.
An error occured while initializing an activation agent for process "SFDCAccountCreate", revision "1.0".
Please ensure that the activation agents are configured correctly in the bpel deployment descriptor (bpel.xml).
oracle.tip.adapter.fw.agent.jca.JCAActivationAgent: java.lang.reflect.InvocationTargetException

Sajid
report abuse
vote down
vote up
Votes: +0
...
written by Sajid , June 04, 2008
JNDI is matching 100%. What is interesting is if I remove the generated APPS_WF_EVENT_t.xsd and choose either no schema or any schema then I receive the event in my soasuite but it sends it to the reject folder. Any ideas what could be wrong?

Thanks
Sajid

report abuse
vote down
vote up
Votes: +0
...
written by Tapash , August 05, 2008
Could not initialize activation agent. : You will get this error while deployment, if you don't map the correct datasource while creating the connection factory.
report abuse
vote down
vote up
Votes: +1
Adapter config wizard issue
written by Antariksh , August 06, 2008
Hi,

While going through the process of adapter configuration wizard doesn't go to the 4th step, where it asks for the XSD type that can be assigned to the payload. It end after selecting the business event. Can anybody tell me why is this happening. Has it got anything to do with JDeveloper version/apps version?

Thanks.
report abuse
vote down
vote up
Votes: -1
Could not initialize activation agent.
written by Sunil1979 , August 29, 2008
Followed every step but got this error??? Did I miss Anything???? Anil your input is appreciated :-)

Could not initialize activation agent.
An error occured while initializing an activation agent for process "xxTestBusinessEventApp", revision "1.0".
Please ensure that the activation agents are configured correctly in the bpel deployment descriptor (bpel.xml).
oracle.tip.adapter.fw.agent.jca.JCAActivationAgent: java.lang.reflect.InvocationTargetException
at com.collaxa.cube.engine.core.BaseCubeProcess.startAllActivationAgents(BaseCubeProcess.java:354)
at com.collaxa.cube.engine.deployment.DeploymentManager.activateDefaultRevision(DeploymentManager.java:1446)
at com.collaxa.cube.engine.deployment.DeploymentManager.setDefaultRevision(DeploymentManager.java:1405)
at com.collaxa.cube.engine.deployment.DeploymentManager.deployProcess(DeploymentManager.java:821)
at com.collaxa.cube.engine.deployment.DeploymentManager.deploySuitcase(DeploymentManager.java:670)
at com.collaxa.cube.ejb.impl.BPELDomainManagerBean.deploySuitcase(BPELDomainManagerBean.java:445)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
at com.evermind.server.ThreadState.runAs(ThreadState.java:620)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
report abuse
vote down
vote up
Votes: +1
Pre-reqs for completing the 4 tutorials
written by Ram B , November 05, 2008
Hi Anil,

As always excellent.
Now to my questions. I have installed Jdeveloper and the SOA suite on my PC and completed the steps mentioned in your other article to make sure it was installed fine and i can connect to the various servers.
Now my question is that do we need to do anything on server side of my development apps instance(11.5.10.2) to complete these 4 BPEL articles.
I wish to learn this but am not sure if i can because we do not have SOA deployed in our environment.

Thansk
ramp
report abuse
vote down
vote up
Votes: +0
Raise Business events on a condition
written by rampaag , April 15, 2009
Anil,

Great Site !!
Is there a way to raise a seeded Business Event in 11i based on some condition. For Example I need to raise the event only if a certain type of record is update .
Secondly what are the parameters for each of these events used for. Is it to restrict the event to that. For example Service request update event has a parameter For Sr number. When that is passed is it raised only for that SR. ALso what re the old value parameters and how to retrieve them.

Thanks in Advance
Ram
report abuse
vote down
vote up
Votes: +0
Event Raised and Data in WF_BPEL_QTAB,however BPEL Process Receive Activity is still waiting?
written by VivekOracleapps , October 27, 2009
HI Anil,Excellant Article.
I have create a BPEL Process,which Receive via Apps Adapter,when a event oracle.apps.po.event.xmlpo is raised.
Everything is fine and Data Enqueues into WF_BPEL_Q,checked from WF_BPEL_QTAB table.
I have my BPEL process waiting to receive from this event via apps adapter.But it never receives.
I have completed all tasks like DS and Connection Pool and using the correct JNDI and checking oc4j-ra.xml for apps-appliction.
Please suggest..Thanks in advance.
You Rock...
report abuse
vote down
vote up
Votes: +1
Write comment
quote
bold
italicize
underline
strike
url
image
quote
quote
smile
wink
laugh
grin
angry
sad
shocked
cool
tongue
kiss
cry
smaller | bigger

security image
Write the displayed characters


busy
 

Search apps2fusion