Login
Register

Home

Trainings

Fusion Blog

EBS Blog

Authors

CONTACT US

Prasad Parmeswaran
  • Register

Oracle Gold Partners, our very popular training packages, training schedule is listed here
Designed by Five Star Rated Oracle Press Authors & Oracle ACE's.

webinar new

Search Courses

×

Warning

JUser: :_load: Unable to load user with ID: 864

This article would cover setups required to enable BPEL to poll Oracle apps adapter as well as we will also see an example of how all of this fits together

 

After SOA Suite is installed, Start SOA Suite and open SOA Console .
 

1)      Setup Data Source and Connection Pooling in Application Server

 

 
 
 
2) 

Click on Application Server Control

 
 Click on Home and go to Administration Tab 
 
3)
 
 

Click on JDBC resources in the service section

 
4)   Create a new connection pool .
 
 
5 ) 
 
 
 
 

Select “New Connection Pool” and click continue.

 
 6)
 
 
 
 

Fill in the required details and give the connection details of database and click on “Test Connection “ . If connection parameters are proper you would get a message “Connection established successfully.” .

 Click Finish .

 You would see your new connection pool created  ( BpelTesting)

 
7) Create a new Data Source . 
 
 

Keep all the default values . ( Verify  Managed Data Source” is selected ).

 

Click continue

 
 
  Select the same connection pool name as the one created in step 6.

 Note Down the JNDI location  :   ebiz/BpelTesting

And DataSourceName             :BPELTestingConnectionPool 

8 ) Setup Oracle Apps adapter

             Go back to cluster topology  , change view by from “Application server” to “Application” .

 

 
 
 
 
 Click on default
 
 
 
 

Click on AppsAdapter

 
 
 

Click on connection Factories  and create a new connection factory

 

 
 
Press continue 
 Give the JNDI and Data source from the step -7

 9 )

Now open  jdeveloper

 

Create a new project ( Select BPEL Process Project and select Asynchronous BPEL Process )  and finish

 

 
 
 
 
 
 

Select oracle applications adapter and drop them onto services lane

Give the JNDI Name created in step 7

   
 
 
 
 
 
 
 
 

Select oracle public API ,in this case I am selecting order delete API .It takes order_header_id as parameter .

   
 
 
 
 
 
 
 
 
 

Partner role will be defaulted.

 
 
 
 

Drag and drop invoke activity between receiveInput and callbackClient.

This is to invoke Oracle Application Adapter service from the client .

 

 

 

 This will default the Operation which you can perform on API.

 Create Global input and output variable .

 
 

Drag and drop assign activity between invoke and receive input activity. This assign activity is to copy value from input to input parameter for API.

 Similarly drag and drop one more assign activity between invoke and Callback client activity .This is to copy API output to BPEL output variable.

 

 
 

Once the design is validated deploy to the application server.

 

 
 
 
  Once it’s deployed you will see it in the BPEL console
 
 
  For testing lets create Order.
 
 
 
 

 

Note down the header id : 273876 and order Number : 143211

 

Test the BPEL process from BEPL Console

 

Click on the link  “OracleDeleteBpelAS”

 

 

 

 
 
 
 
 

Give the order header ID as Input and

Post xml message

 
 
 
 
 
 
 
 

In the Audit XML you would see retur_status as ‘S’ . It signified order has been successfully deleted .

 
 
 
 

 

 

 

 

 


Comments   

0 #1 anjireddy 2009-07-05 23:29
hi
how to raise an invoice in acount payables
Quote
0 #2 ronald 2009-08-21 08:00
Thanks for the sample, very well documented!
Quote
0 #3 Kelvin 2009-11-16 02:55
I follow the document, deploy is ok, however when I test it, I got below error message:
-
-
-
-
-
12401




-
-
-
null

-
file:/D:/produc t/10.1.3.1/Orac leAS_1/bpel/dom ains/default/tm p/.bpel_OrderDe letedBPEL_1.0_d 41264bb3ada8bac 208cd33d844c74a f.tmp/DeleteOrd er.wsdl [ DeleteOrder_ptt ::DeleteOrder(I nputParameters, OutputParameter s) ] - WSIF JCA Execute of operation 'DeleteOrder' failed due to: Could not create/access the TopLink Session. This session is used to connect to the datastore. [Caused by: BPELTestingConn ectionPool not found] ; nested exception is: ORABPEL-11622 Could not create/access the TopLink Session. This session is used to connect to the datastore. [Caused by: BPELTestingConn ectionPool not found] See root exception for the specific exception. You may need to configure the connection settings in the deployment descriptor (i.e. $J2EE_HOME/appl ication-deploym ents/default/Db Adapter/oc4j-ra .xml) and restart the server. Caused by Exception [TOPLINK-7060] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 061004)): oracle.toplink. exceptions.Vali dationException Exception Description: Cannot acquire data source [BPELTestingConn ectionPool]. Internal Exception: javax.naming.Na meNotFoundExcep tion: BPELTestingConn ectionPool not found.

-
Exception Description: Cannot acquire data source [BPELTestingConn ectionPool]. Internal Exception: javax.naming.Na meNotFoundExcep tion: BPELTestingConn ectionPool not found
Quote
0 #4 Oracletube 2010-02-15 17:23
Hi Kevin,

Looking at the error trace looks like a firewall issue or Database issue. Did you try checking the database. The error says This session is used to connect to the datastore. Check the connection to your datastore.

Che ers,
Oracletube .com
www.oracletube.com - Social networking and Interactive Learning of Oracle Products...Chec k it out.
Quote
0 #5 Kevin Zhang 2010-08-30 10:09
I followed your instruction, get the following for X_MSG_DATA

FND _AS_UNEXPECTED_ ERROR N PKG_NAME OE_Header_Util N PROCEDURE_NAME Delete_Row N ERROR_TEXT ORA-01403: no data found.

The header id I am using is a valid one. Not sure why API can't find my sales order.

I am using Apps 11.5.10

Do Ineed somehow call Fnd_global.apps _initialize() API first to simulate login as a certain user with proper responsibility before calling OE_ORDER_PUB.DE LETE_ORDER?

Th anks!

Kevin
Quote
0 #6 Kevin Zhang 2010-08-30 10:27
I called API directly in SQL*PLUS and it gives me the same error.


DECLARE
l_re turn_statusVARC HAR2(1);
l_msg_countNUMB ER;
l_msg_dataVARCH AR2(2000);

BEG IN

oe_order_pu b.delete_order(
p_header_id => 590687,
x_return_status => l_return_status ,
x_msg_count => l_msg_count,
x_msg_data=> l_msg_data);

d bms_output.put_ line('l_return_ status = '||l_return_sta tus);
dbms_output.put _line('l_msg_da ta = '||l_msg_data);

END;
/



Tes t result:

l_return_stat us = U
l_msg_data = FND FND_AS_UNEXPECT ED_ERROR N PKG_NAME OE_Header_Util N PROCEDURE_NAME Delete_Row N ERROR_TEXT ORA-01403: no data found


I am confused why my result can't match to your demo.


Thanks!

Kev in
Quote
0 #7 Kevin Zhang 2010-08-30 12:53
If I simulate login to apps first via API Fnd_global.apps _initialize before calling oe_order_pub.de lete_order, it will succeeds...

AP PS - KEDEV> DECLARE
2 l_return_status VARCHAR2(1);
3 l_msg_count NUMBER;
4 l_msg_data VARCHAR2(2000);
5
6 BEGIN
7
8 -- simulate login first before calling oe_order_pub API
9 Fnd_global.apps _initialize(15239, 52531, 660);
10
11 oe_order_pub.de lete_order(
12 p_header_id => 590687,
13 x_return_status => l_return_status ,
14 x_msg_count => l_msg_count,
15 x_msg_data => l_msg_data);
16
17 dbms_output.put _line('l_return _status = '||l_return_sta tus);
18 dbms_output.put _line('l_msg_da ta = '||l_msg_data);
19
20 END;
21 /
l_return_statu s = S
l_msg_data =

PL/SQL procedure successfully completed.


Do this means I need create a DbAdapter to call Fnd_global.apps _initialize() in my bpel process before calling AppsAdapter for oe_order_pub.de lete_order() api?


Thanks!

Kevin
Quote

Add comment


Security code
Refresh

Search Trainings

Fully verifiable testimonials

Apps2Fusion - Event List

<<  Apr 2024  >>
 Mon  Tue  Wed  Thu  Fri  Sat  Sun 
  1  2  3  4  5  6  7
  8  91011121314
15161718192021
22232425262728
2930     

Enquire For Training

Fusion Training Packages

Get Email Updates


Powered by Google FeedBurner