Invoking ActiveBPEL Process from Oracle
Hi,
I've a problem when trying to invoke a process that is deployed in ActiveBPEL Open Source Engine as Web Service.Short description of the (simple) scenario:
I defined a BPEL Process in Oracle that receives a message (containing two strings) and delegates it to the Active BPEL Process which concatenates these string and returns to resutling string to the Oracle Process. Then the result is returned to the client.
Deployment of the process works fine, but my Problem is that when starting the BPEL Process the invocation of the other process failed. I analyzed the reason for that and found out that Oracle changes message parts order for the invoke inputVariable. That is the WSDL definition of the ActiveBPEL process is the following
<wsdl:message name="echoMessage">
<wsdl:part name="echoPart1" type="xsd:string"/>
<wsdl:part name="echoPart2" type="xsd:string"/>
</wsdl:message>
and in the Variable definition defines "echoPart2" as the first message part and sends
<echPart2></echPart2>
<echPart1></echPart1>
to the ActiveBPEL process and the process can't handle this. So the Oracle process never gets an answer from the ActiveBPEL process.
The WSDL is auto-generated from ActiveBPEL.
My question is: Are there any ideas to influence this behaviour of changing the variable definitions order. Why does Oracle change the order defined in the WSDL-File. Is a XSD-Schema file recommeded?
Thanks in advance for your help!
Greetings
Sven
The namespace is defined! Now I add the complete WSDL-Definition:
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions name="echo1_1" targetNamespace="http://www.diplom.de/ns/echo1_1" xmlns:tns="http://www.diplom.de/ns/echo1_1" xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:message name="echoCallback">
<wsdl:part name="result" type="xsd:string"/>
</wsdl:message>
<wsdl:message name="echoMessage">
<wsdl:part name="echoPart1" type="xsd:string"/>
<wsdl:part name="echoPart2" type="xsd:string"/>
</wsdl:message>
<wsdl:portType name="echoPortType">
<wsdl:operation name="doIt">
<wsdl:input message="tns:echoMessage"/>
<wsdl:output message="tns:echoCallback"/>
</wsdl:operation>
</wsdl:portType>
<plnk:partnerLinkType xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/" name="echoPLT">
<plnk:role name="echo_Provider">
<plnk:portType name="tns:echoPortType"/>
</plnk:role>
</plnk:partnerLinkType>
</wsdl:definitions>
The error does not occure, when I'm defining the types in a XSD-File. But I still cannot invoke my ActiveBPEL process from the Oracle BPEL Engine. The process will be timed out in the BPEL-Console.
Any experiences with this?
Similar Messages
-
Invoking bpel process from java in oracle soa/bpm 11g
Hi,
We have some java code to invoke bpel process in oracle BPM 10g following the instructions in http://download-east.oracle.com/docs/cd/B14099_19/integrate.1012/b14448/invoke.htm.
Basically the steps are:
1) get a Locator (com.oracle.bpel.client.Locator)
2) get IDeliveryService (com.oracle.bpel.client.delivery.IDeliveryService) reference from locator
3) call IDeliveryService method request or post with input message and get the response back.
Recently we want to migrated from oracle bpm 10g to oracle soa/bpm 11g. But I can not find the similar API in 11g. It seems now some adapter/binding need to be added in exposed service lane in soa composite view, for example, ADF-BC, direct binding etc, in order to allow java to invoke a bpel process. Here are two very useful links from Edwin about the detail how this is implemented.
http://biemond.blogspot.com/2009/11/invoking-soa-suite-11g-service-from.html
http://biemond.blogspot.com/2009/11/calling-soa-suite-direct-binding.html?showComment=1285198033913#comment-c1055322845511794252
My question is:
1) what are the choices and the official/best way to invoke a bpel process in oracle soa/bpm 11g from java?
2) does user need to add an adapter/binding in exposed service lane in order to let the bpel service be called in java?
3) what is the real difference between a bpm application and soa application in 11g?
I will really appreciate any expert's opinion.
Thanks,
BinThanks for your reply and confirmation, really appreciate it.
Yes, I found the difference of the invoking process API and was able to invoke bpel process using direct and ADF-BC binding by following Edwin's blog. But I have not found any official reference to compare this API difference between 10g and 11g ( I will mark this question as answered if anyone can find an official source from oracle, need to prove it to the team). The API to work with human task workflow seems pretty much the same between 10g and 11g. -
Issue in invoking the BPEL process from Oracle using a SOAP Request
Hi,
We are facing an issue while invoking a deployed Bpel Process from Oracle Applications 11.5.10..
Using a concurrent program( Unix / Host program ) we are passing the input variables required for the Bpel process in the ProcessRequest tags and forming this as a SOAP message payload.
Then trying to invoke the deployed bpel process using the end point location using HTTP POST..but nothing is happening..
The bpel process is not getting invoked when i look at the Console and also checked for the Manual Recovery queue..it's not stuck there as well..
Have set the Transfer Time Out to 25 minutes using UTL_HTTP.SET_TRANSFER_TIMEOUT(1500);
Could someone please help us as soon as possible with this ..as this is critical and we are stuck at the moment.
The logic is mentioned below :
UTL_HTTP.SET_TRANSFER_TIMEOUT(1500);
UTL_HTTP.SET_DETAILED_EXCP_SUPPORT(ENABLE=>TRUE);
soap_request:='<?xml version="1.0" encoding="UTF-8"?>'||
'<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'||
'<soap:Header/>'||
'<soap:Body xmlns:ns1="http://xmlns.oracle.com/bpelprocessname">'||
'<ns1:bpelprocessnameProcessRequest>'||
'<ns1:CSONum>'||order_number||'</ns1:CSONum>'||
'<ns1:CreationDate>'||c_chr_cso_last_run_dte||'</ns1:CreationDate>'||
'</ns1:bpelprocessnameProcessRequest>'||
'</soap:Body>'||
'</soap:Envelope>';
http_req:= utl_http.begin_request
('http://bpel_server ip:port/orabpel/domain_name/bpelprocessname/1.0' , 'POST', 'HTTP/1.1'
utl_http.set_header(http_req, 'Content-Type', 'text/xml') ;
utl_http.set_header(http_req, 'Content-Length', length(soap_request)) ;
utl_http.set_header(http_req, 'SOAPAction', 'process');
utl_http.write_text(http_req, soap_request) ;
http_resp:= utl_http.get_response(http_req) ;
utl_http.read_text(http_resp, soap_respond) ;
utl_http.end_response(http_resp) ;
dbms_output.put_line(soap_respond);
Thankscheck if your soap envelope is correct,check my below procedure which is working fine for me
procedure xxxxx_BPEL_SCHEDULER
IS
soap_request varchar2(30000);
soap_respond varchar2(30000);
http_req utl_http.req;
http_resp utl_http.resp;
launch_url varchar2(240) ;
begin
soap_request:='<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:add="http://schemas.xmlsoap.org/ws/2003/03/addressing" xmlns:star="http://xmlns.oracle.com/xxxxx_BPEL_SCHEDULER">
<soapenv:Header>
<add:MessageID>?</add:MessageID>
<add:ReplyTo>
<add:Address>?</add:Address>
<!--Optional:-->
<add:ReferenceProperties>
<!--You may enter ANY elements at this point-->
</add:ReferenceProperties>
<!--Optional:-->
<add:PortType>?</add:PortType>
<!--Optional:-->
<add:ServiceName PortName="?">?</add:ServiceName>
<!--You may enter ANY elements at this point-->
</add:ReplyTo>
</soapenv:Header>
<soapenv:Body>
<star:STARS_BPEL_SCHEDULERProcessRequest>
<star:SCHEDULER_PARAM1>?</star:SCHEDULER_PARAM1>
<star:SCHEDULER_PARAM2>?</star:SCHEDULER_PARAM2>
<star:SCHEDULER_PARAM3>?</star:SCHEDULER_PARAM3>
<star:SCHEDULER_PARAM4>?</star:SCHEDULER_PARAM4>
<star:SCHEDULER_PARAM5>?</star:SCHEDULER_PARAM5>
</star:STARS_BPEL_SCHEDULERProcessRequest>
</soapenv:Body>
</soapenv:Envelope>';
http_req:= utl_http.begin_request('http://xxxxxx.com:16000/orabpel/default/xxxx_BPEL_SCHEDULER/1.0 '
,'POST',
'HTTP/1.1'
utl_http.set_header(http_req, 'Content-Type', 'text/xml') ;
utl_http.set_header(http_req, 'Content-Length', length(soap_request)) ;
utl_http.set_header(http_req, 'SOAPAction', 'initiate');
utl_http.write_text(http_req, soap_request) ;
http_resp:= utl_http.get_response(http_req) ;
utl_http.read_text(http_resp, soap_respond) ;
utl_http.end_response(http_resp) ;
dbms_output.put_line(soap_respond);
END; -
How to call a BPEL process from Oracle Apps Java Concurrent program
Hello,
I need to trigger a BPEL process from Oracle Apps. Can anybody tell me how to do that? I have two triggering option--
1. On button click from a Form 6i screen
2. Using Java Concurrent program.
Thanks in advance.
DebkantaI am not sure how concurrent program works, but may be one of the way might work out, let me know if Java Concurrent Program works a bit different way
- [if async] Through concurrent program, you can insert message token to db or aq, and BPEL can be instantiated from there
or
- If it supports pure java call, then you can look at multiple documents (e.g. http://www.oracle.com/technology/products/ias/bpel/pdf/orabpel-Tutorial7-InvokingBPELProcesses.pdf) to invoke your process
- You can also use oracle db utility to invoke soap operation and get the result back
HTH,
Chintan -
Invoking BPEL process from a jsp
Hi,
I am invoking a synchronous BPEL process from a jsp.
The jsp I am using is pasted below for your reference.
createWorkOrderFFA.jsp invokes another jsp invokeWorkOrderFFA.jsp which inturn calls the BPEL process.
The code is given below.
-----------------createWorkOrderFFA.jsp starts-----------
<%@page import="com.oracle.bpel.client.Locator" %>
<%@page import="com.oracle.bpel.client.NormalizedMessage" %>
<%@page import="com.oracle.bpel.client.dispatch.IDeliveryService" %>
<html>
<head>
<title>Work Order Creation </title>
<meta http-equiv="PRAGMA" content="NO-CACHE" />
<meta http-equiv="EXPIRES" content="-1" />
<SCRIPT LANGUAGE="JavaScript">
function setfocus(){
document.generatePO.technicianName.focus();
function mypopup()
mywindow = window.open ("totalWODetails.jsp","mywindow","scrollbars=1,width=600,height=500");
mywindow.moveTo(50,50);
function DoTheCheck()
if((document.generatePO.repair.checked != true) && (document.generatePO.replacement.checked != true) &&(document.generatePO.emergency.checked != true))
alert('Please select atleast one task type for Work Order');
return false;
document.generatePO.submit();
return true;
function chkvalues(){
if( document.generatePO.additionalInfo.value == "")
alert(" Please provide additional information for tasks assigned");
document.generatePO.additionalInfo.focus();
return false;
return true;
</SCRIPT>
</head>
<body bgcolor = "#E9C2A6">
<br>
<tr cellspacing="0" cellpadding="0">
<td width="30%" align=left ><b><h2><font color="#3333CC"> </font></b></h2> </td>
</tr>
<!-- <h1 align='center'> Work Order Creation </h1> -->
<table border="1" cellspacing="0" cellpadding="0" width="80%" align=center>
<tr bgcolor=#A68064 valign=center > </tr>
<tr bgcolor=#A68064 valign==center><td valign=center > <h2 align='center'> <font COLOR="#CDCDCD" SIZE=5 FACE="sans-serif"> Field Force Automation - Work Order Creation </font></h2></td></tr>
<tr><td align=center>
<table border="0" cellspacing="0" cellpadding="0" width="100%" >
<form name="generatePO" action="./invokeWorkOrderFFA.jsp" onSubmit="return DoTheCheck()">
</tr>
<tr >
<br>
<td width="40%" align="right" > <b> <font color="black" SIZE=2 FACE="sans-serif" align="right"> Interface Type: </font> </b> </td>
<!-- <td width="2%">:</td><td><input type="text" name="SSN" maxlength=10 size=10></td> -->
<td width="60%" colspan = "2">
<SELECT NAME="interfaceType">
<OPTION VALUE="Batch"> Batch </OPTION>
<OPTION VALUE="Near Real Time"> Near Real Time </OPTION>
<OPTION VALUE="Automatic"> Automatic </OPTION>
</SELECT >
</td>
</tr>
<tr>
<td width="40%" align=left>
</td>
<td width="20%" align=left>
</td>
<td width="20%" align=left>
</td>
<td width="20%" align=left>
</td>
</tr>
<tr>
<td width="40%" align=middle><b><font color="black" SIZE=2 FACE="sans-serif" align="right"> Work Order Tasks * : </font> </b></td>
<td width="20%"><b>Maintenance</b><br>
<INPUT TYPE=CHECKBOX NAME="repair" value="repair" >repair<P>
<INPUT TYPE=CHECKBOX NAME="replacement" value="replacement">replacement<P>
</td>
<td width="20%" align=left></td></td>
</tr>
</tr>
<tr> <td width="20%">
<td width="40%" align=left> <b>Emergency</b><br><INPUT TYPE=CHECKBOX NAME="gasEmergency" value="gasEmergency">Gas Emergency<P>
</td>
<td width="20%" align=left>
</td>
<td width="20%" align=left>
</td>
<td width="20%" align=left>
</td>
</tr>
<tr>
<td width="40%" align=middle><b><font color="black" SIZE=2 FACE="sans-serif" align="right"> Additional Information: </font> </b></td>
<td width="20%"><TEXTAREA NAME="additionalInfo" COLS=40 ROWS=6></TEXTAREA>
</td>
<td width="20%" align=left>
</td>
<td width="20%" align=left>
</td>
</tr>
</tr>
<tr bgcolor=#A68064>
<td width="40%" align=left bgcolor=#A68064>
</td>
<td width="20%" align=left bgcolor=#A68064>
</td>
<td width="20%" align=left bgcolor=#A68064>
</td>
<td width="20%" align=left bgcolor=#A68064>
</td>
</tr>
<tr bgcolor=#A68064 ><td width="100%" colspan=4 align=center bgcolor=#A68064>
<input type="submit" name="submit" value="Submit Order" style="background-color: #E9C2A6;">
<input type="reset" name="reset" value="Reset Values" style="background-color: #E9C2A6;" >
<input type="button" name="btn" value=" WO Error Report" onClick="javascript: mypopup()" style="background-color:#E9C2A6;" >
</td>
</tr>
<tr bgcolor=#A68064>
<td width="40%" align=left bgcolor=#A68064>
</td>
<td width="20%" align=left bgcolor=#A68064>
</td>
<td width="20%" align=left bgcolor=#A68064>
</td>
<td width="20%" align=left bgcolor=#A68064>
</td>
</tr>
<tr bgcolor=#A68064>
<td width="50%" colspan = "4" align=left bgcolor="#A68064"> <font color="#CDCDCD"> * Indicates Mandatory fields </font>
</td>
</tr>
<tr bgcolor=#A68064> </tr>
</form>
</table>
</td></tr></table>
</table>
<br>
<!-- <marquee> <b>Wipro Technologies</b>, <br> Disclaimer : This is only a prototype model and used only for testing. </marquee> -->
<script language="JavaScript">
</Script>
</body>
</html>
-----------------createWorkOrderFFA.jsp ends-------------
-----------------invokeWorkOrderFFA.jsp starts-----------
<%@page import="com.oracle.bpel.client.Locator" %>
<%@page import="com.oracle.bpel.client.NormalizedMessage" %>
<%@page import="com.oracle.bpel.client.delivery.IDeliveryService" %>
<html>
<head>
<title>Invoke WorkOrderService </title>
</head>
<body>
<%
String interfaceType = request.getParameter("interfaceType");
String repair = request.getParameter("repair");
System.out.println("repair repair---------------------->");
String replacement = request.getParameter("replacement");
String gasEmergency = request.getParameter("gasEmergency");
String additionalInfo = request.getParameter("additionalInfo");
String woType1="Maintenance";
String woType2="Emergency";
System.out.println("before xml---------------------->");
String xml = "<hostWOApplication xmlns=\"http://services.otn.com\">"
+"<interfaceType>" + interfaceType + "</interfaceType>"
+"<Maintenance>"
+"<repair>" + repair + "</repair>"
+"<replacement>" + replacement + "</replacement>"
+"</Maintenance>"
+"<Emergency>"
+ "<gasEmergency>" + gasEmergency + "</gasEmergency>"
+"</Emergency>"
+ "<additionalInfo>" + additionalInfo + "</additionalInfo>"
+ "</hostWOApplication>";
System.out.println("Payload data ----------------------------------------->"+xml);
Locator locator = new Locator("default","bpel");
System.out.println("Before Idelivery service--------------->");
IDeliveryService deliveryService = (IDeliveryService)locator.lookupService(IDeliveryService.SERVICE_NAME );
System.out.println("After IDeliveryService data----------------------->");
// construct the normalized message and send to Oracle BPEL Process Manager
NormalizedMessage nm = new NormalizedMessage( );
nm.addPart("payload", xml );
System.out.println("Before process service--------------->");
deliveryService.request("A2", "process", nm);
System.out.println("After process service--------------->");
out.println( "<b><Font Face=Arial color=red>Work Order has been initiated!</font></b>" );
%>
<table bgColor="#E9C2A6" border="1" cellpadding="0">
<tr ><td width="100%" colspan=4 align=center >
<b>The Work Order Details could be found at this link:
<Font Face=Arial color=red><italic>Work Order Creation Details<italic></Font><b>
</tr>
</table>
</body>
</html>
-----------------invokeWorkOrderFFA.jsp ends-----------
I am getting the following error:
----------------error desc starts----------------------
Oracle BPEL Process Manager Full Cycle
An unexpected error has occurred while executing your request. This is most likely related to a defect in the Oracle BPEL Process Manager product. We apologize for the inconvenience. Please open a TAR in http://metalink.oracle.com if you are our customers. Otherwise, you can post the error to the OTN forum and we will get back to you as soon as possible.
Attachments:
Build Information:
Oracle BPEL Server version 2.2
Build: 1361
Build time: Thu Mar 17 15:51:23 PST 2005
Build type: release
Source tag: BPELPM_10_1_2_beta3_branch
Exception Message:
[java.lang.Exception]
Invalid Login. Domain not specified.
Exception Trace:
java.lang.Exception: Invalid Login. Domain not specified.
at com.collaxa.cube.fe.util.ServletUtils.getLocator(ServletUtils.java:80)
at displayInstance.jspService(_displayInstance.java:71)
at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:347)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
at com.collaxa.cube.fe.DomainFilter.doFilter(DomainFilter.java:89)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:649)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Thread.java:534)
----------------error desc ends----------------------hey mgrovr..
how to ensure that my jsps are under orabpel. i m getting a javax.naming.NameNotFoundException: ejb/collaxa/system/DomainManagerBean not found exception wile invoking bpel process from jsp. I have created the jsps in Jdeveloper and i'm running it from there only.
Can u tell me a way to keep me application under orabpel -
Problem in invoking BPEL process from jsp
Dear Experts,
I am trying to invoke BPEL process from simple JSP form, with guide lines of http://download.oracle.com/docs/cd/B31017_01/integrate.1013/b28981/invoke.htm. But I'm receiving the following error
Error: JSP files must reside in the server root directory or a subdirectory beneath it
Note: I having my JSP page inside my project folder-->output_html--> myfile.jsp
Thanks,
RajeshHi Rajesh,
Please refer \bpel\samples\tutorials\102.InvokingProcesses\jsp.
BPEL Tutorial 7: Invoking BPEL Processes through SOAP and Java : Reference: 2004/06/14/orabpel/d5/1.0
Hope this helps!
Regards
Anirudh Pucha -
How to invoke BPEL process from JAVA API
Hi Guys
Any idea if you can tell me how to invoke BPEL process from JAVA API ?
What to do in BPEL process manager to achieve that?
Regards
DeepakSee http://download-west.oracle.com/docs/cd/B31017_01/integrate.1013/b28981/invoke.htm#sthref1373 and the JavaDocs http://download-west.oracle.com/docs/cd/B31017_01/integrate.1013/b28986/toc.htm.
-
Need to invoke a process from a column link and then redirect to a url
Is it possible to invoke a process from a column link then redirect to a url
I want to invoke a process that has a pl sql block of code which will do some table inserts and then redirect the user to an external url.
Any help would be appreciated.Howdy Scott,
I thought this might help me but I've got a dynamic form with apex_application.g_f01(i) items on it ie tabular form. How can I take the value of these arrays with me to the temporary page with the onload process?
Thanks
Gary -
How to invoke crystal reports from Oracle forms 11g R2 along with passing p
How to invoke crystal reports from Oracle forms 11g R2 along with passing parameter to it.
how to pass parameters to crystal report, please help.how to pass parameters to crystal report, please help.This would entirely depend on crystal reports and you might find informations on crystal reports related communities more likely...I for one have seen crystal reports the last time about 12 years ago. And even back then I simply acknowledged it's existence instead of working with it.
Maybe crystal reports can be invoked via a URL call which would make it simple as you'd need simply build an URL and show the report using web.show_document. But that's pure speculation. Also you might not be the first with this requirement, so the solution to your problem might be right under your nose and just a little google search away ;)
cheers -
How to invoke business process from sap xi?
Hi...
Please tell "How to invoke business process from SAP UI's."Hi...
How to invoke business process from SAP UI's. (Eg: To trigger a process after creating an invoice) -
TNS:Operation Timed Out error while trying to invoke BPEL Process from sql
Hi,
I am trying to invoke a BPEL Process from PL/sql code. When i try to invoke the process, I am getting the following error message
ORA-29273 HTTP Request Failed
ORA:06512: at SYS.UTH_HTTP at line 1029
ORA:12535: TNS:Operation Timed Out
ORA:06512: at line 18
I have the SOA suite installed on my local machine...and the BPEL process that i am trying to invoke is deployed their.
Any idea what could be wrong..following is the code piece
soap_request:='<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body xmlns:ns1="http://xmlns.oracle.com/Test">
<ns1:TesProcessRequest><ns1:input>is1_1land</ns1:input></ns1:TesProcessRequest>
</soap:Body>
</soap:Envelope>';
dbms_output.put_line('soap_request: '||soap_request);
utl_http.set_proxy('3.209.30.25:80', '3.209.32.149:8888');
http_req:= utl_http.begin_request('http://3.209.32.149:8888/orabpel/default/Tes/1.0 '
,'POST'
,'HTTP/1.1');
dbms_output.put_line('after Begin Request' );
utl_http.set_header(http_req, 'Content-Type', 'text/xml') ;
Please adviseyou are right the file adapter doesnt invoke any bpel
process, instead it is polling the file from
directory location?If it is polling for new files, shouldn't it create a new instance of the BPEL process automatically the moment it finds a new file? In other words, should a new file trigger an instance of the BPEL process rather than being started from PL/SQL?
Can this file adapter not be invoked as bpel process
in that case?The file adapter is part of a BPEL process. The BPEL process can be invoked from e.g. PL/SQL.
In this case this file adapeter return to an RECEIVE
activity...I think this receive cannot be invoked as
a BPEL process rite?Can you explain what you mean with this?
Also , will all synchronous request return "TIMEOUT"
error, if tried to invoke from pl/sql?Only if the synchronous process instance takes more time to complete (and thus to return) than the value specified for a time-out to occur. If the instance completes in for example 10 ms and the time-out time is specified as 30 seconds, no time-out will occur.
Regards, Ronald -
Invoking BPEL Process from a JSP Page 500 Internal Server Error
Hi,
I try to invoke a BPEL Process from a JSP Page and receive the following error. I just pasted the example from the Oracle PM Developer's Guide tutorial. Previously I deployed the CreditRatingService BPEL Process.
Can anyone help me, please?
D.
Here is a sequence from my JSP / and the error I get:
String ssn = request.getParameter("ssn");
if(ssn == null)
ssn = "123-12-1234";
String xml = "<ssn xmlns=\"http://services.otn.com\">"
+ ssn + "</ssn>";
Locator locator = new Locator("default","welcome1");
IDeliveryService deliveryService =
(IDeliveryService)locator.lookupService
(IDeliveryService.SERVICE_NAME );
// construct the normalized message and send to oracle bpel process manager
NormalizedMessage nm = new NormalizedMessage( );
nm.addPart("payload", xml );
NormalizedMessage res =
deliveryService.request("CreditRatingService", "process", nm);
Map payload = res.getPayload();
out.println( "BPELProcess CreditRatingService executed!<br>" );
out.println( "Credit Rating is " + payload.get("payload") );
500 Internal Server Error
java.lang.Exception: Erstellen von "ejb/collaxa/system/DeliveryBean"-Bean nicht erfolgreich. Es wurde folgende Exception gemeldet: "javax.naming.NameNotFoundException: ejb/collaxa/system/DeliveryBean not found
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.rmi.RMIServerContext.lookup(RMIServerContext.java:207)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.ApplicationContext.unprivileged_lookup(ApplicationContext.java:257)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.ApplicationContext.lookup(ApplicationContext.java:197)
at javax.naming.InitialContext.lookup(InitialContext.java:351)
at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:279)
at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:250)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:83)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:53)
at _InvokeBP._jspService(_InvokeBP.java:65)
[InvokeBP.jsp]
at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.3.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59)
at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462)
at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594)
at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
at com.evermind[Oracle Containers for J2EE 10g (10.1.3.3.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
Message was edited by:
user603180
Message was edited by:
user603180
Message was edited by:
user603180
Message was edited by:
user603180
Message was edited by:
user603180
Message was edited by:
user603180
Message was edited by:
user603180
Message was edited by:
user603180
Message was edited by:
user603180Here is the solution:
Properties props = new Properties();
props.setProperty("orabpel.platform", "oc4j_10g");
props.setProperty("java.naming.factory.initial",
"com.evermind.server.rmi.RMIInitialContextFactory");
props.setProperty("java.naming.provider.url", "ormi://localhost/orabpel");
props.setProperty("java.naming.security.principal", "oc4jadmin");
props.setProperty("java.naming.security.credentials", "welcome1");
and several jars have to be added to the project:
Orabpel.jar , Orabpel-common.jar, oc4j*.jar,
%ANT_HOME%\lib\ant.jar;
%ANT_HOME%\lib\xercesImpl.jar;
%ANT_HOME%\lib\xml-apis.jar;
%AXIS_HOME%\lib\axis.jar;
%AXIS_HOME%\lib\axis-ant.jar;
%AXIS_HOME%\lib\commons-discovery.jar;
%AXIS_HOME%\lib\commons-logging.jar;
%AXIS_HOME%\lib\jaxrpc.jar;
%AXIS_HOME%\lib\log4j-1.2.8.jar;
%AXIS_HOME%\lib\saaj.jar;
%AXIS_HOME%\lib\wsdl4j.jar; -
Problem while invoking Bpel Process from Browser
server WSDL
<definitions
name="getOpenInvoicesService"
targetNamespace="http://xmlns.oracle.com/pcbpel/adapter/db/getOpenInvoicesService/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:tns="http://xmlns.oracle.com/pcbpel/adapter/db/getOpenInvoicesService/"
xmlns:db="http://xmlns.oracle.com/pcbpel/adapter/db/getOpenInvoicesService"
xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
xmlns:jca="http://xmlns.oracle.com/pcbpel/wsdl/jca/"
>
<types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" >
<import namespace="http://xmlns.oracle.com/pcbpel/adapter/db/getOpenInvoicesService" schemaLocation="getOpenInvoicesService.xsd" />
</schema>
</types>
<message name="getOpenInvoicesServiceInput_msg">
<part name="getOpenInvoicesServiceInput_msg" element="db:getOpenInvoicesServiceInput"/>
</message>
<message name="getOpenInvoicesServiceOutputCollection_msg">
<part name="getOpenInvoicesServiceOutputCollection" element="db:getOpenInvoicesServiceOutputCollection"/>
</message>
<portType name="getOpenInvoicesService_ptt">
<operation name="getOpenInvoicesService">
<input message="tns:getOpenInvoicesServiceInput_msg"/>
<output message="tns:getOpenInvoicesServiceOutputCollection_msg"/>
</operation>
</portType>
<binding name="getOpenInvoicesService_binding" type="tns:getOpenInvoicesService_ptt">
<jca:binding />
<operation name="getOpenInvoicesService">
<jca:operation
SqlString=" SELECT distinct aps.trx_number TrxNumber, ra.purchase_order PurchaseOrder, rl.sales_order OrderNumber, ra.interface_header_attribute2 OrderType, hc.account_number CustomerNumber, rt.name TrxType, aps.acctd_amount_due_remaining AmmountDue, aps.trx_date TrxDate, aps.due_date TrxDueDate FROM ra_customer_trx_all ra , ra_customer_trx_lines_all rl , ar_payment_schedules_all aps , ra_cust_trx_types_all rt , hz_cust_accounts hc , hz_parties hp , hz_cust_acct_sites_all hcasa_bill, hz_cust_site_uses_all hcsua_bill , hz_party_sites hps_bill , ra_cust_trx_line_gl_dist_all rct WHERE 1 = 1 AND ra.customer_trx_id = rl.customer_trx_id AND ra.customer_trx_id = aps.customer_trx_id AND ra.org_id = aps.org_id AND rct.customer_trx_id = aps.customer_trx_id AND rct.customer_trx_id = ra.customer_trx_id AND rct.customer_trx_id = rl.customer_trx_id AND rct.customer_trx_line_id = rl.customer_trx_line_id AND ra.complete_flag = 'Y' AND rl.line_type IN ('FREIGHT', 'LINE') AND ra.cust_trx_type_id = rt.cust_trx_type_id AND ra.bill_to_customer_id = hc.cust_account_id AND hc.status = 'A' AND hp.party_id = hc.party_id AND hcasa_bill.cust_account_id = ra.bill_to_customer_id AND hcasa_bill.cust_acct_site_id = hcsua_bill.cust_acct_site_id AND hcsua_bill.site_use_code = 'BILL_TO' AND hcsua_bill.site_use_id = ra.bill_to_site_use_id AND hps_bill.party_site_id = hcasa_bill.party_site_id AND hcasa_bill.status = 'A' AND hcsua_bill.status = 'A' AND aps.amount_due_remaining <> 0 AND aps.status = 'OP' AND hc.account_number= ?"
InteractionSpec="oracle.tip.adapter.db.DBPureSQLInteractionSpec" >
</jca:operation>
<input/>
<output/>
</operation>
</binding>
<service name="getOpenInvoicesService">
<port name="getOpenInvoicesService_pt" binding="tns:getOpenInvoicesService_binding">
<!--Your runtime connection is declared in
J2EE_HOME/application-deployments/default/DbAdapter/oc4j-ra.xml
These mcf properties here are from your design time connection and
save you from having to edit that file and restart the application server
if eis/DB/sfh is missing.
These mcf properties are safe to remove.-->
<jca:address location="eis/DB/sfh" UIConnectionName="sfh"
ManagedConnectionFactory="oracle.tip.adapter.db.DBManagedConnectionFactory"
mcf.DriverClassName="oracle.jdbc.OracleDriver"
mcf.PlatformClassName="oracle.toplink.internal.databaseaccess.Oracle9Platform"
mcf.ConnectionString="jdbc:oracle:thin:@localhost:1526:xxxx"
mcf.UserName="apps"
mcf.Password="53CB0F044A0D3DD2C063679F18F89870" />
</port>
</service>
<plt:partnerLinkType name="getOpenInvoicesService_plt" >
<plt:role name="getOpenInvoicesService_role" >
<plt:portType name="tns:getOpenInvoicesService_ptt" />
</plt:role>
</plt:partnerLinkType>
</definitions>
client.wsdl
<?xml version="1.0" encoding="UTF-8"?>
<definitions
name="getOpenInvoices"
targetNamespace="http://xmlns.oracle.com/getOpenInvoices"
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:client="http://xmlns.oracle.com/getOpenInvoices"
xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
>
<types>
<schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://xmlns.oracle.com/getOpenInvoices" xmlns="http://www.w3.org/2001/XMLSchema">
<element name="getOpenInvoicesProcessResponse">
<complexType>
<sequence>
<element name="result" type="string"/>
</sequence>
</complexType>
</element>
<element name="getOpenInvoicesProcessRequest">
<complexType>
<sequence>
<element name="accountNumber" type="string"/>
</sequence>
</complexType>
</element>
</schema>
</types>
<message name="getOpenInvoicesRequestMessage">
<part name="payload" element="client:getOpenInvoicesProcessRequest"/>
</message>
<message name="getOpenInvoicesResponseMessage">
<part name="payload" element="client:getOpenInvoicesProcessResponse"/>
</message>
<portType name="getOpenInvoices">
<operation name="OpenInvoices">
<input message="client:getOpenInvoicesRequestMessage"/>
<output message="client:getOpenInvoicesResponseMessage"/>
</operation>
</portType>
<binding name="OpenInvoicebindings" type="client:getOpenInvoices">
<http:binding verb="GET"/>
<operation name="OpenInvoices">
<http:operation location="/OpenInvoices"/>
<input>
<http:urlEncoded/>
</input>
<output>
<mime:mimeXml part="Body"/>
</output>
</operation>
</binding>
<service name="OpenInvoiceService">
<port binding="client:OpenInvoicebindings" name="OpenInvoicesport">
<http:address location="http://sys0004:8889/httpbinding/default/getOpenInvoices"/>
</port>
</service>
<plnk:partnerLinkType name="getOpenInvoices">
<plnk:role name="getOpenInvoicesProvider">
<plnk:portType name="client:getOpenInvoices"/>
</plnk:role>
</plnk:partnerLinkType>
</definitions>
bpel process
<?xml version = "1.0" encoding = "UTF-8" ?>
<!--
Oracle JDeveloper BPEL Designer
Created: Tue Jul 13 11:05:51 IST 2010
Author:
Purpose: Synchronous BPEL Process
-->
<process name="getOpenInvoices"
targetNamespace="http://xmlns.oracle.com/getOpenInvoices"
xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
xmlns:ns1="http://xmlns.oracle.com/pcbpel/adapter/db/getOpenInvoicesService/"
xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap"
xmlns:ns2="http://xmlns.oracle.com/pcbpel/adapter/db/getOpenInvoicesService"
xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
xmlns:client="http://xmlns.oracle.com/getOpenInvoices"
xmlns:ora="http://schemas.oracle.com/xpath/extension"
xmlns:orcl="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc">
<!--
PARTNERLINKS
List of services participating in this BPEL process
-->
<partnerLinks>
<!--
The 'client' role represents the requester of this service. It is
used for callback. The location and correlation information associated
with the client role are automatically set using WS-Addressing.
-->
<partnerLink name="client" partnerLinkType="client:getOpenInvoices"
myRole="getOpenInvoicesProvider"/>
<partnerLink name="getOpenInvoicesService"
partnerRole="getOpenInvoicesService_role"
partnerLinkType="ns1:getOpenInvoicesService_plt"/>
</partnerLinks>
<!--
VARIABLES
List of messages and XML documents used within this BPEL process
-->
<variables>
<!-- Reference to the message passed as input during initiation -->
<variable name="inputVariable"
messageType="client:getOpenInvoicesRequestMessage"/>
<!-- Reference to the message that will be returned to the requester-->
<variable name="outputVariable"
messageType="client:getOpenInvoicesResponseMessage"/>
<variable name="Invoke_1_getOpenInvoicesService_InputVariable"
messageType="ns1:getOpenInvoicesServiceInput_msg"/>
<variable name="Invoke_1_getOpenInvoicesService_OutputVariable"
messageType="ns1:getOpenInvoicesServiceOutputCollection_msg"/>
</variables>
<!--
ORCHESTRATION LOGIC
Set of activities coordinating the flow of messages across the
services integrated within this business process
-->
<sequence name="main">
<!-- Receive input from requestor. (Note: This maps to operation defined in getOpenInvoices.wsdl) -->
<receive name="receiveInput" partnerLink="client"
portType="client:getOpenInvoices" operation="OpenInvoices"
variable="inputVariable" createInstance="yes"/>
<!-- Generate reply to synchronous request -->
<assign name="Assign_1">
<copy>
<from variable="inputVariable" part="payload"/>
<to variable="Invoke_1_getOpenInvoicesService_InputVariable"
part="getOpenInvoicesServiceInput_msg"/>
</copy>
</assign>
<invoke name="Invoke_1" partnerLink="getOpenInvoicesService"
portType="ns1:getOpenInvoicesService_ptt"
operation="getOpenInvoicesService"
inputVariable="Invoke_1_getOpenInvoicesService_InputVariable"
outputVariable="Invoke_1_getOpenInvoicesService_OutputVariable"/>
<assign name="Assign_2">
<copy>
<from variable="Invoke_1_getOpenInvoicesService_OutputVariable"
part="getOpenInvoicesServiceOutputCollection"/>
<to variable="outputVariable" part="payload"/>
</copy>
</assign>
<reply name="replyOutput" partnerLink="client"
portType="client:getOpenInvoices" operation="OpenInvoices"
variable="outputVariable"/>
</sequence>
</process>the above is the server and client wsdls and Bpel process. i have created the wsdl so as to call from HTTP calling, means process is been called from Browser .... but i can't see the result ...
http://sys0004:8889/httpbinding/default/getOpenInvoices/OpenInvoices?accountNumber=1608
above is the link called from browser
output in the browser ::: <getOpenInvoicesProcessResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.oracle.com/getOpenInvoices" />
actually it has to fetch data from DB and show in xml format can anyone assist me where i am going wrongHi Rajesh,
Please refer \bpel\samples\tutorials\102.InvokingProcesses\jsp.
BPEL Tutorial 7: Invoking BPEL Processes through SOAP and Java : Reference: 2004/06/14/orabpel/d5/1.0
Hope this helps!
Regards
Anirudh Pucha -
ERROR: Invoking BPEL PROCESS FROM ADF APP
hi guys ,
I have made a simple bpel process with invokes a webservice (This service only gets a string and returns the string).
I have tested this bpel process and web service it works fine. when tested with bpel console.
I copied the wsdl of bpel and created the datacontrol.
the problem is that when i hit start the process from ADF App. it raises the error
Sep 7, 2009 1:24:49 PM oracle.wsm.common.logging.WsmMessageLogger logSevere
SEVERE: Failure in looking up EJB component PolicyAccessService#oracle.wsm.policymanager.ejb.IStringPolicyAccessServiceRemote.
Sep 7, 2009 1:24:49 PM oracle.wsm.common.logging.WsmMessageLogger logSevere
SEVERE: Failure in looking up EJB component PolicyAccessService#oracle.wsm.policymanager.ejb.IStringPolicyAccessServiceRemote.
Sep 7, 2009 1:24:49 PM oracle.adf.model.connection.webservice.impl.WebServiceConnectionMessages debugExecuteFailure
SEVERE: Failed to execute a SAAJ interaction.
javax.xml.ws.WebServiceException: oracle.fabric.common.PolicyEnforcementException
at oracle.j2ee.ws.client.jaxws.DispatchImpl.invoke(DispatchImpl.java:741)
at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.synchronousInvocationWithRetry(OracleDispatchImpl.java:226)
at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.invoke(OracleDispatchImpl.java:97)
at oracle.adf.model.connection.webservice.impl.SaajInteractionImpl.execute(SaajInteractionImpl.java:87)
at oracle.adfinternal.model.adapter.webservice.provider.soap.SOAPProvider.execute(SOAPProvider.java:323)
at oracle.adfinternal.model.adapter.webservice.WSDataControl.invokeOperation(WSDataControl.java:251)
at oracle.adf.model.bean.DCBeanDataControl.invokeMethod(DCBeanDataControl.java:427)
at oracle.adf.model.binding.DCInvokeMethod.callMethod(DCInvokeMethod.java:256)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.doIt(JUCtrlActionBinding.java:1437)
at oracle.adf.model.binding.DCDataControl.invokeOperation(DCDataControl.java:2120)
at oracle.adf.model.bean.DCBeanDataControl.invokeOperation(DCBeanDataControl.java:464)
at oracle.adf.model.adapter.AdapterDCService.invokeOperation(AdapterDCService.java:307)
at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:693)
at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.executeEvent(PageLifecycleImpl.java:394)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding._execute(FacesCtrlActionBinding.java:217)
at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding.execute(FacesCtrlActionBinding.java:176)
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:597)
at com.sun.el.parser.AstValue.invoke(AstValue.java:157)
at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283)
at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53)
at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1245)
at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:673)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:273)
at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:165)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:191)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:85)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:54)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:420)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:247)
at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:157)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.jps.wls.JpsWlsFilter$1.run(JpsWlsFilter.java:96)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
at oracle.security.jps.wls.util.JpsWlsUtil.runJaasMode(JpsWlsUtil.java:146)
at oracle.security.jps.wls.JpsWlsFilter.doFilter(JpsWlsFilter.java:140)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:70)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.wls.DMSServletFilter.doFilter(DMSServletFilter.java:202)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3588)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2200)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2106)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1428)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: oracle.fabric.common.PolicyEnforcementException
at oracle.integration.platform.common.InterceptorChainImpl.createPolicyEnforcementException(InterceptorChainImpl.java:161)
at oracle.integration.platform.common.InterceptorChainImpl.processRequest(InterceptorChainImpl.java:97)
at oracle.integration.platform.common.mgmt.InterceptorChainManager.processRequest(InterceptorChainManager.java:216)
at oracle.j2ee.ws.client.mgmt.runtime.SuperClientInterceptorPipeline.handleRequest(SuperClientInterceptorPipeline.java:96)
at oracle.j2ee.ws.client.jaxws.DispatchImpl.handleRequest(DispatchImpl.java:524)
at oracle.j2ee.ws.client.jaxws.DispatchImpl.handleRequest(DispatchImpl.java:508)
at oracle.j2ee.ws.client.jaxws.DispatchImpl.invoke(DispatchImpl.java:693)
... 64 more
Caused by: java.lang.NullPointerException
at oracle.j2ee.ws.rm.interceptor.WSRMClientInterceptor.processRequest(WSRMClientInterceptor.java:169)
at oracle.integration.platform.common.InterceptorChainImpl.processRequest(InterceptorChainImpl.java:89)
... 69 more
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://xmlns.oracle.com/SOAApp1/Project1/BPELProcess1"><env:Header/><env:Body><ns1:process><ns1:input>Shakeel Anjum</ns1:input></ns1:process></env:Body></env:Envelope>
Kindly help
Regards,
TariqHi,
Check if your wsdl endpoint can accessed properly. If yes, check the soap-binding address is properly pointing to the server hosting the webservice.
Regards,
Harikiran. -
How to pass multiple values while invoking bpel process from ADF?
Hi,
I want to call a bpel process from my ADF application. The bpel process is having one input parameter. I have created webservice data control by using WSDL url.
Lets say, I have an Emp multi select table. I drag and drop the data control into Emp table selection facet to create an "Invoke" button.
I am able to pass single value (lets say Empid) to the bpel process after clicking the "Invoke" button.
But, my requirement is to pass all the selected values ( as its a multi select table) to the bpel process after clicking the "Invoke" button once.
How can I achieve this?
--AbhijitHi,
if the BPEL method that you access allows you to pass arrays or lists, then you can get a list of selectedRowKeys from the table, which then you use to get the value from the underlying binding or the table. This however requires some Java coding instead of directly invoking the executable on the binding layer
- you create the BPEL method in the binding layer
- from a Java managed bean you call ADFBindingContext --> get current instance and access Binding container
- OperationBinding oper = (OperationBinding ) bindings.get("method to invoke");
oper.gerParamsMap().put("the BPel argument name", value);
oper.execute();
- To access the table selected rows
RowKeySet rks = _table.getSelectedRowKeys();
//iterate over the set of selected row keys and delete
//each of the found rows
Iterator selectedRowIterator = rks.iterator();
while (selectedRowIterator.hasNext()){
//get the first key
Object key = selectedRowIterator.next();
//make the row current
_table.setRowKey(key);
//the row is an instance of the ADF node binding class
JUCtrlHierNodeBinding rowWrapper = null;
rowWrapper = (JUCtrlHierNodeBinding) _table.getRowData();
//get the actual oracle.jbo.Row object
Row row = rowWrapper.getRow();
... get attribute values by calling row.getAttribute("name"); assuming you used ADF BC to build the tableFrank
Maybe you are looking for
-
Kernel Panic when i open screen
Hi all So my computer was running fine today, but after moving between classes, i re-opened my laptop and a kernel panic screen popped up. So i restarted, and when the option to report came up, i clicked the report button. No log popped up or anythin
-
I've had this iPad thing for a few months. It used to just ask me for my password, but now it is demanding I set up four questions and answers for "added security". I don't want to do that, I just want to carry on as I was but the machine is preventi
-
Photoshop Elements 10 Help with image jumping around the screen
I'm using a trial version of Elements 10 that I'm interested in buying it but 50% of the time when I click on an image so that I can click and drag it around the screen, it jumps off the screen. I have been using Elements 6 and never had this proble
-
Converting PDFs to PDF/X-1a: yay or nay? (prepress question)
Hey, folks. As part of my production duties for a nationally distributed monthly mag, I receive PDF ads and check them over to make sure they're suitable for print (CMYK colours, bleed, type safety, 300 DPI, etc.), for which I use Acrobat's prefligh
-
Temporary tablespace is not being used
hello all, we have oracle 10g 10.2.1.0 on windows server 2003 platform (32-bit). we have 24*7 database. we have OLTP with heavy transactions. last night we ran a report which is supposed to fetch more than 2500 rows and query include group by and ord