Invoking BPEL Process through pl/sql is failing
Hi all,
I am trying to invoke BPEL process through PL/SQL and its throwing following error.
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header/><env:Body><env:Fault xmlns="http://xmlns.oracle.com/pcbpel/adapter/file/ReadFile/"><faultcode xmlns="">null:Read_ptt</faultcode><faultstring xmlns="">Cannot figure out operation name. Bad SOAPAction or wsa:Action.</faultstring><faultactor xmlns="">initiate</faultactor></env:Fault></env:Body></env:Envelope>
Following is code I am using to invoke BPEL PROCESS
declare
soap_request varchar2(30000);
soap_respond varchar2(30000);
http_req utl_http.req;
http_resp utl_http.resp;
begin
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/pcbpel/adapter/file/ReadFile/">
--<ns1:Read_plt><ns1:input>leeg</ns1:input></ns1:Read_plt>
</soap:Body>
</soap:Envelope>';
http_req:= sys.utl_http.begin_request('http://localhost/orabpel/default/BPELProcess1/v2007_12_03__65618','POST','HTTP/1.1' );
sys.utl_http.set_header(http_req, 'Content-Type', 'text/xml') ;
sys.utl_http.set_header(http_req, 'Content-Length', length(soap_request)) ;
sys.utl_http.set_header(http_req, 'SOAPAction', 'initiate');
sys.utl_http.write_text(http_req, soap_request) ;
http_resp:= sys.utl_http.get_response(http_req) ;
sys.utl_http.read_text(http_resp, soap_respond) ;
sys.utl_http.end_response(http_resp) ;
dbms_output.put_line(soap_respond);
end;
Any help would be appriciated.
Thanks,
Vipul
Hi,
Switching on or off a bpel is an admin job.
u can stop an application but not one bpel.
I doubt if there is any way to do it programatically.
Let us get other opinons
Regards
Similar Messages
-
Error while invoking BPEL Process through HTML Page
Hi ,
I have created a HTML Page to invoke BPEL synchronous process .
HTML Page contains :
<html>
<head>
<title>Untitled Document</title>
<h1>Add Macro Task Input Form </h1>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="cyan" text="#000000">
<form name="form1" method="get" action="/httpbinding/default/AddMacroSync/process">
EmployeeId :
<input type="text" name="EmployeeId" ><br>
<br>
TaskName :
<input type="text" name="MacroTaskName" >
<button
id="identifier"
class="dialog"
label="OK"
accesskey="t"/>
<br>
</form>
</body>
</html>
I am able to invoke my BPEL Process named as " AddMacroSync" .
It also creating instance for this BPEL Process .
But when I go BPEL Console and check my instance , it is always faulted .
I am providing two inputs : Employee Id and Taskname through HTML Page .
These inputs got assigned to their respective output variables .
But when I click on audit link ..it shows error while invoking the Process .
It Show error :
when invoking endpointAddress 'http://152.69.248.232:8990/AddMacroTask-AddMacroTask-context-root/AddMacroTaskWebService', [java.lang.NumberFormatException]
But this end point address is working when I put this address in URL .
Please someone help me how to solve this problem .
Thanks
Prashant Dwivedi
Message was edited by:
Prashant DwivediHi Clemens ,
I changed My HTML ...Now it looks like as :
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="application/x-www-form-urlencoded; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="post" action="/httpbinding/default/AddMacroSync">
<input type="hidden" name="msg_part" value="payload">
<input type="hidden" name="namespace" value="http://xmlns.oracle.com/AddMacroSync">
EmployeeId:
<input type="text" name="EmployeeId">
TaskName :
<input type="text" name="TaskName">
<input type="submit" name="Submit" value="Submit">
</form>
</body>
</html>
After this when I try to incoke my BPEL Process through this HTML :
I am gettign following error :
500 Internal Server Error
java.lang.IllegalStateException: IOException: Premature end of POST data
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.EvermindHttpServletRequest.getParameter(EvermindHttpServletRequest.java:2452)
at com.collaxa.cube.ws.http.HttpBindingServlet.checkSecurity(HttpBindingServlet.java:281)
at com.collaxa.cube.ws.http.HttpBindingServlet.doPost(HttpBindingServlet.java:85)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:824)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:285)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:126)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
at java.lang.Thread.run(Thread.java:534) -
Class Not found Exception for invoking BPEL process through the Java code
Hi.
The JDeveloper IDE raise the Exception From the invoking the BPEL process through the java code .Class Not Found Exception (Locator,ID.......).What is process of importing these classes from API.In your code (.bpel file) import the library using the bpelx:exec tag. For example the adding the following entry in your .bpel file imports the com.oracle.bpel.client.util library.
<bpelx:exec import="com.oracle.bpel.client.util.*"/> -
Invoking BPEL Process through href
Hi,
I am trying to call oracle bpel process through my custom jsp href, Can any one please tell me how to pass the task name(updatetask string varible like "COMPLETE TASK") through my href, otherwise is there any way to invoke the process through switch case(sample code), and i want to know is there any way to use the same human task for different task..
Message was edited by:
user611303Hi,
I am trying to call oracle bpel process through my custom jsp href, Can any one please tell me how to pass the task name(updatetask string varible like "COMPLETE TASK") through my href, otherwise is there any way to invoke the process through switch case(sample code), and i want to know is there any way to use the same human task for different task..
Message was edited by:
user611303 -
How to invoke BPEL process through SQL
Hi All,
I'm working on Oracle SOA (10.1.3.1.0) BPEL and Oracle JDeveloper (10.1.3.1.0). I want to launch the BPEL process from SQL, pls guide me how to do this.
Thanking You!!!!Hi!
There is already posted a lot on this forum on this topic, but ok :)
http://orasoa.blogspot.com/2006/11/calling-bpel-process-with-utldbws.html
Example BPEL process callout from PLSQL or Java Stored Procedure
try the search in this forum : 'plsql'
will give some hits. -
Invoking BPEL process through jsp
Hi,
I am trying to invoke BPEL (HelloWorld) process through jsp from my system.BPEL process is running in another system.
In the jsp i coded like this:
Locator locator = new Locator("default","bpel","172.11.11.111");
But still it's invoking my local instance only.
Please help me. I am new to BPEL.
ThanksHI,
Thanks alot for your quick reply.
I modified code like :
props.setProperty("java.naming.provider.url",
"ormi://"+"172.11.2.123"+":"+"9700"+"/orabpel");
props.setProperty("java.naming.security.principal", "default");
props.setProperty("java.naming.security.credentials", "bpel");
Locator locator = new Locator("default","bpel",props);
But after deploying when i invoked i got below exception:
java.lang.Exception: Failed to create "ejb/collaxa/system/DomainManagerBean" bean; exception reported is: "javax.naming.NamingException: Lookup error: java.io.IOException: Server protocol was not ORMI, if uncertain about the port your server uses for ORMI then use the default, 23791; nested exception is: java.io.IOException: Server protocol was not ORMI, if uncertain about the port your server uses for ORMI then use the default, 23791 [Root exception is java.io.IOException: Server protocol was not ORMI, if uncertain about the port your server uses for ORMI then use the default, 23791] at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.rmi.RMIContext.lookup(RMIContext.java:168) at javax.naming.InitialContext.lookup(InitialContext.java:347) at com.oracle.bpel.client.util.BeanRegistry.lookupDomainManagerBean(BeanRegistry.java:218) at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:83) at com.oracle.bpel.client.Locator.<init>(Locator.java:143) at com.oracle.bpel.client.Locator.<init>(Locator.java:114) at _invokeHelloWorld._jspService(_invokeHelloWorld.java:73) [SRC:/invokeHelloWorld.jsp:39] at com.orionserver[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].http.OrionHttpJspPage.service(OrionHttpJspPage.java:56) at oracle.jsp.runtimev2.JspPageTable.compileAndServe(JspPageTable.java:567) at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:302) 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[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:810) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:798) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:278) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:120) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192) at java.lang.Thread.run(Thread.java:534)Caused by: java.io.IOException: Server protocol was not ORMI, if uncertain about the port your server uses for ORMI then use the default, 23791 at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.rmi.RMIConnection.connect(RMIConnection.java:2505) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.rmi.RMIConnection.connect(RMIConnection.java:2339) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.rmi.RMIConnection.lookup(RMIConnection.java:1781) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.rmi.RMIServer.lookup(RMIServer.java:721) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.rmi.RMIContext.lookup(RMIContext.java:149) ... 19 more". at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:95) at com.oracle.bpel.client.Locator.<init>(Locator.java:143) at com.oracle.bpel.client.Locator.<init>(Locator.java:114) at invokeHelloWorld.jspService(_invokeHelloWorld.java:73) [SRC:/invokeHelloWorld.jsp:39]
please help....
Thanks -
Problem in invoking BPEL Process through JSP
Hi ,
I have created a simple BPEL asynchronous process called as " BPELProcessAddMacroTask" .
JSP File looks like :
<%@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>Invoke AddMacro Task</title>
</head>
<body>
<%
String EmployeeId = request.getParameter("EmployeeId");
if (EmployeeId == null)
%>
<!-- Construct HTML form here -->
<h3>Invoke AddMacro Task BPEL Application</h3>
<h4>Add Macro Task Form</h4>
<form>
<table>
<tr>
<td>EmployeeId:</td>
<td><input type="text" name="EmployeeId" value="43"></td>
</tr>
<tr>
<td>TaskName</td>
<td><input type="text" name="MacroTaskName" value="DIMPLETTE_EXAMPLE"></td>
</tr>
<input type="submit" value="Send Input">
</form>
<%
else
// 1. Get form fields
//String EmployeeId = request.getParameter("EmployeeId");
String MacroTaskName = request.getParameter("MacroTaskName");
// 2. Create loan application XML document
String xml = "<AddMacroTask xmlns=\"http://xmlns.oracle.com/BPELProcessAddMacroTask\">"
+ "<EmployeeId>" + EmployeeId + "</EmployeeId>"
+ "<MacroTaskName>" + MacroTaskName + "</MacroTaskName>" ;
// 3. Initiate the BPEL process here
Locator locator = new Locator("default","bpel");
IDeliveryService deliveryService = (IDeliveryService)
locator.lookupService(IDeliveryService.SERVICE_NAME );
// Construct a normalized message and send to Oracle BPEL Process Manager
NormalizedMessage nm = new NormalizedMessage();
nm.addPart("payload", xml);
// Initiate the BPEL process
deliveryService.post("BPELProcessAddMacroTask", "initiate", nm);
%>
<p>BPEL Process <code>BPELProcessAddMacroTask</code> initiated
with the input containing EmployeeId=<%= EmployeeId %></p>
<p>Please refer to the
BPEL Console
to see the status of the initiated AddMacroTask BPEL Process.</p>
<%
%>
<body>
</html>
I am not finding my " addmacrotask.jsp" in home.jsp even after running "Obant" command .
I am getting following error when try to invoke the web service :
My UI Path is : http://localhost:9700/InvokingProcessesUI/addmacrotask.jsp
I am getting this error :
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:88) at com.orionserver.http.OrionHttpJspPage.service(OrionHttpJspPage.java:56) at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:350) 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:103) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:663) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330) at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:285) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:126) at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186) at java.lang.Thread.run(Thread.java:534)
Please someone help me out with this problem .
Thanks
DeepikaHi ,
I have set it to this in server.xml :
<application name="orabpel" path="../../../BC4J/redist/bc4j.ear" auto-start="true" />
<application name="BPELProcessAddMacroTask" path="D:\BPEL\integration\orabpel\system\appserver\oc4j\j2ee\home\applications\InvokingProcessesUI.ear" parent="orabpel" auto-start="true" />
</application-server>
But still not able to create instance . Same problem persists.
Thanks
Deepika -
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 -
Invoking BPEL Process problem from Tomcat
Hi, I got a problrm to invoke BPEL process through JSP.
I think it's caused from BPEL Library.
Where can i find com.evermind.server.rmi.RMIInitialContextFactory ?
the error messages are below.
javax.naming.NoInitialContextException: Cannot instantiate class: com.evermind.server.rmi.RMIInitialContextFactory [Root exception is java.lang.ClassNotFoundException: com.evermind.server.rmi.RMIInitialContextFactory]
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:652)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243)
at javax.naming.InitialContext.init(InitialContext.java:219)
at javax.naming.InitialContext.<init>(InitialContext.java:195)
at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:277)
at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:250)
at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:174)
at com.oracle.bpel.client.delivery.DeliveryService.post(DeliveryService.java:149)
at org.apache.jsp.invokeBPEL_jsp._jspService(invokeBPEL_jsp.java:80)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
Caused by: java.lang.ClassNotFoundException: com.evermind.server.rmi.RMIInitialContextFactory
Thanx.
jean.Hi 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 -
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 -
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 -
While deploying BPEL Process through JDeveloper 10.1.3.2 the BUILD FAILS
While deploying a BPEL Process through JDeveloper 10.1.3.2 it says :-
BUILD FAILED
D:\Development_mywork\MemoApplication\Memo\MemoProcess\build.xml:79: A problem occured while connecting to server "boomidevp.alshaya.com" using port
"7778":
### Steps to Reproduce ###
The Connections Tab, Application Server details are as follows :-
Type Tab :-
Connection Type :- Oracle Application Server 10g 10.1.3
Authentication Tab :-
UserName :- oc4jadmin
Password :- bpel123
Connection Tab :-
Connect to :- Single Instance
Host Name :- 172.16.100.85
OPMN Port :- 6004
OC4J Instance Name :- oc4j_soa
The Test was successful.
The Integration Server details are as follows :-
Connection Tab :-
App. Server :- Same thing created earlier.
Host Name :- 172.16.100.85
Port Number :- 7778
The Test Connection was successful.
After the above steps, went to Application Navigator Tab and tried to Deploy a BPEL Process.
While deploying this BPEL Process through JDeveloper 10.1.3.2 it says :-
BUILD FAILED
D:\Development_mywork\MemoApplication\Memo\MemoProcess\build.xml:79: A problem occured while connecting to server "boomidevp.alshaya.com" using port
"7778":
Alshaya eGroup Business Solutions Team
www.alshaya.comDisable your proxy settings in JDeveloper.
Marc -
A problem with initiating a BPEL process through its web service interface
hi,
i am trying to initiate the helloWorld BPEL process through its web service interface. i use a proxy class that i wrote and i use it from J#.net.
this is the relevant code part:
hello.HelloWorldBinding wsProxy = new hello.HelloWorldBinding();
wsProxy.initiate("Hello");
and the server shows the following message:
ORABPEL-05002
Message handle error.
An exception occurred while attempting to process the message "com.collaxa.cube.
engine.dispatch.message.invoke.InvokeInstanceMessage"; the exception is: Cannot
decode properties.
The process domain was unable to decode the properties for message guid 10, whic
h are stored in column String index out of range: 3094; the exception reported i
s: {2}.
sql statement: SELECT conv_id, message_guid, domain_ref, process_id, revision_ta
g, operation_name, receive_date, state, priority, properties FROM invoke_message
WHERE message_guid = ?
at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(Dispatc
hHelper.java:152)
at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseSche
duledWorker.java:70)
at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java
:86)
at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDriven
BeanInvocation.java:123)
at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome
.java:755)
at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:
928)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(Relea
sableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Thread.java:534)
<2006-05-10 21:21:15,171> <ERROR> <default.collaxa.cube.engine.data> <BaseDeliveryPersistenceAdaptor::loadInvokeMetaDa
java.lang.StringIndexOutOfBoundsException: String index out of range: 3094
at java.lang.String.substring(String.java:1441)
at com.collaxa.common.util.LVDecoder.decodeElement(LVDecoder.java:152)
at com.collaxa.common.util.LVDecoder.decodeToMap(LVDecoder.java:45)
at com.collaxa.cube.engine.adaptors.common.BaseDeliveryPersistenceAdaptor.loadInvokeMetaData(BaseDeliveryPersi
r.java:2186)
at com.collaxa.cube.engine.adaptors.common.BaseDeliveryPersistenceAdaptor.__loadInvoke(BaseDeliveryPersistence
:2112)
at com.collaxa.cube.engine.adaptors.common.BaseDeliveryPersistenceAdaptor.loadInvoke(BaseDeliveryPersistenceAd
079)
at com.collaxa.cube.engine.data.DeliveryPersistenceMgr.loadInvoke(DeliveryPersistenceMgr.java:357)
at com.collaxa.cube.engine.delivery.DeliveryService.handleInvoke(DeliveryService.java:465)
at com.collaxa.cube.engine.ejb.impl.CubeDeliveryBean.handleInvoke(CubeDeliveryBean.java:335)
at ICubeDeliveryLocalBean_StatelessSessionBeanWrapper16.handleInvoke(ICubeDeliveryLocalBean_StatelessSessionBe
java:1796)
at com.collaxa.cube.engine.dispatch.message.invoke.InvokeInstanceMessageHandler.handle(InvokeInstanceMessageHa
7)
at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:125)
at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
at com.evermind.server.ejb.MessageDrivenBeanInvocation.run(MessageDrivenBeanInvocation.java:123)
at com.evermind.server.ejb.MessageDrivenHome.onMessage(MessageDrivenHome.java:755)
at com.evermind.server.ejb.MessageDrivenHome.run(MessageDrivenHome.java:928)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Thread.java:534)
what is the problem? how come i can't initiate the process?
i will be happy if i could get help..
thanks in advancecan you initate the process from the bpel console successfully?
if so can you use obtunnel from the installation to trace the soap message (that goes over the wire), my best guess in this case is a problem with a header (holding the wsa information) ..
after starting obtunnel it will liesten to a custom port, and will forward the request to the engine, so you need to point your client to this new port..
hth clemens -
Error when invoking BPEL process from Java client
Hi,
I am trying to invoke the SyncHelloWorld BPEL process through a simple java application. When I run the application, I get the following error:
java.rmi.RemoteException: ; nested exception is:
ORABPEL-02052
Cannot lookup BPEL domain.
The BPEL domain "default" cannot be found; the domain may not have initialized properly.
Please verify that the BPEL domain loader has a valid set of initialization properties in the application properties file.
at com.oracle.bpel.client.dispatch.DeliveryService.request(DeliveryService.java:95)
at com.oracle.bpel.client.dispatch.DeliveryService.request(DeliveryService.java:44)
at HelloWorld.main(HelloWorld.java:49)
Caused by: ORABPEL-02052
Cannot lookup BPEL domain.
The BPEL domain "default" cannot be found; the domain may not have initialized properly.
Please verify that the BPEL domain loader has a valid set of initialization properties in the application properties file.
at com.collaxa.cube.engine.CubeEngineHolder.getStatus(CubeEngineHolder.java:41)
at com.collaxa.cube.engine.CubeEngineHolder.getEngine(CubeEngineHolder.java:52)
at com.collaxa.cube.engine.CubeContextManager.create(CubeContextManager.java:61)
at com.collaxa.cube.engine.dispatch.DispatchHelper.scheduleRemote(DispatchHelper.java:191)
at com.oracle.bpel.client.dispatch.BaseDispatcherService.initialRequestAnyType(BaseDispatcherService.java:762)
at com.oracle.bpel.client.dispatch.BaseDispatcherService.initialRequest(BaseDispatcherService.java:340)
at com.oracle.bpel.client.dispatch.BaseDispatcherService.request(BaseDispatcherService.java:241)
at com.oracle.bpel.client.dispatch.DispatcherService.request(DispatcherService.java:66)
at com.oracle.bpel.client.dispatch.DeliveryService.request(DeliveryService.java:80)
... 2 more
However, when I start the PM, I get a message saying OraBPEL "default" BPEL domain loaded. The code for the Java client is as follows (the error occurs when calling deliveryService.request(...)):
Properties props = new java.util.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","admin");
props.setProperty("java.naming.security.credentials","welcome");
props.setProperty("dedicated.rmicontext", "true");
Locator locator = new Locator("default","bpel",null,props);
String input = "someInput";
String xml = "<input xmlns=\"http://tutorial.oracle.com\">"
+ input + "</input>";
IDeliveryService deliveryService =
(IDeliveryService)locator.lookupService
(IDeliveryService.SERVICE_NAME );
// construct the normalized message and send to oracle bpel processmanager
NormalizedMessage nm = new NormalizedMessage( );
nm.addPart("payload", xml );
NormalizedMessage res =
deliveryService.request("SyncHelloWorld", "process", nm);
Map payload = res.getPayload();
System.out.println(payload.get("payload") );
Any ideas would be greatly appreciated
Thanks
HermanCould you please run obversion.bat and let us know what version of the engine you are running? If timezone allows and you have the availability, I would like to try to broker a quick 15-minute web conference with a member of our dev team to look at this problem and provide a more detailed answer. What is your time difference with San Francisco (PST)?
Edwin -
Null Pointer exception while invoking BPEL process
Hi all,
I am getting following exception when I am invoking a BPEL process1 (deployed in 10.1.3.1) from another BPEL Process 2 (deployed in 10.1.3.3)
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<env:Fault xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<faultcode>env:Server</faultcode>
<faultstring>java.lang.NullPointerException</faultstring>
<faultactor/>
</env:Fault>
</env:Body>
</env:Envelope>
BPEL Process 1 is working fine when given manual input (testing through console). But when invoked using BPEL Process 2, it gives the above error. I also tried invoking BPEL Process 1 (and many other webservices deployed in 10.1.3.1) using TCPMON tool and got the same error.
Am I missing something here in configuration of 10.1.3.1 or any other issue? Please help as it is really urgent.Contact [email protected]
Slava Imeshev wrote:
Hi Ramu,
"Ramu" <[email protected]> wrote in message
I have just upgraded to service pack #13 on WLS 5.1 from service pack #6.I am using the same code as it was with SP #6. When I invoke finder method
on entity bean, I get null pointer exception. The primary key object for the
entity bean has equals() method.
javax.ejb.FinderException: Exception executing finder:java.lang.NullPointerException
atweblogic.ejb.internal.StatefulEJBCache.getFinderContext(StatefulEJBCache.jav
a:264)
atweblogic.ejb.internal.StatefulEJBCache.getEJBContext(StatefulEJBCache.java:3
54)
Check if equals() method can handle null parameter.
Regards,
Slava Imeshev--
Rajesh Mirchandani
Developer Relations Engineer
BEA Support
Maybe you are looking for
-
Installing Solaris 8 on a Compaq Deskpro EN
I'm having trouble just getting started. After selecting which drive to boot from (IDE), I get the error: /pci@0,0/pci-ide@7,1/ide@1/cmdk@0,0:a: can't open - no VTOC Help!!!!
-
Exposing proxy service as a webservice using sb protocol
Hi everybody. My team and I were working on an integration project between several applications. So we created all the OSB Projects needed to connect those applications and now I'm working on a web application that reads several logs that these integ
-
For a specific use case, we are looking at the option of using a java callout ( A POJO) in a ALSB proxy service and to write some synchronous JMS code in it. We are not sure of ALSB internals and not sure whether the java callout code will be execute
-
I have tried everything to connect my acer to a wirless network. Does anyone know how to connect to a wirless network?
-
SPAM : next action - Perform Adjustment
Dear All, I am applying SAP-HR support pack SAPKE47080 on my SAP R/3 4.7. I am getting " Perform Adjustment " as a next action. Import phase 'RUN_SPDD_?' (17.02.2009, 21:55:07) Manual modification adjustment is neccessary Interrupt the import for exe