Question in invoking a bpel process from adf (how to return a table)
hi all,
i have developed a bpel process that checks customer name and if the customer name is valid , it will go to query a table of product and send this data to the client (jsf)
In my bpel process ,there are two services
1. Getcustomer service--> this service is developed by java web services that checks if the customername ='john' and it will return true and then query the product deta
2. Product serverice--> this service is developed using entity ejb class first and then created sesssion bean , exposing this seesion bean as a ejb web serive that can query a product table in the database.
In the syschronous process
1. receive input (customer name)
2. assigncustomer
3. invoke_customer-->if =john----> Getcustomer service
4. switch---->if true--->
5. invoke_product ---> product service that can return a table of product detail
6. assignproductdetail
7. replyoutput to the client ( i could see the result of the detail of product on the bpel control , it seemed fine)
i could deploy this bpel process sucessfully without errors and i copied the wsdl of this bpel process
8. i created an adf application and put this wsdl link into the web service control that i created so that i could see the data control
However,
Under the data control tab......
product------>(data control)
process(string)...operation
parameters
----input
<----String (result)
the question is did i create the wrong bpel process because the result that return is String why when the bpel process is mapped into data control it looked like this.
why i can not see any collection of product or any parameter of product could anyone give me some advices???
Therefore when i developed jsf page i fill the input value customer name -- and it returned nothing......please help i would highly appreicated.
datacontrol.xml file
<?xml version="1.0" encoding="UTF-8" ?>
<pageDefinition xmlns="http://xmlns.oracle.com/adfm/uimodel"
version="10.1.3.39.84" id="untitled1PageDef"
Package="oracle.view.pageDefs">
<parameters/>
<executables>
<variableIterator id="variables">
<variable Type="java.lang.String" Name="process_input"
IsQueriable="false"/>
<variable Type="java.lang.String" Name="process_Return"
IsQueriable="false" IsUpdateable="0"
DefaultValue="${bindings.process.result}"/>
</variableIterator>
</executables>
<bindings>
<methodAction id="process" MethodName="process" RequiresUpdateModel="true"
Action="999" IsViewObjectMethod="false"
DataControl="product_customer" InstanceName="product_customer"
ReturnName="product_customer.methodResults.product_customer_process_result">
<NamedData NDName="input" NDType="java.lang.String"
NDValue="${bindings.process_input}"/>
</methodAction>
<attributeValues id="input" IterBinding="variables">
<AttrNames>
<Item Value="process_input"/>
</AttrNames>
</attributeValues>
<attributeValues id="process1" IterBinding="variables">
<AttrNames>
<Item Value="process_Return"/>
</AttrNames>
</attributeValues>
</bindings>
</pageDefinition>
<?xml version="1.0" encoding="UTF-8" ?>
<JavaBean xmlns="http://xmlns.oracle.com/adfm/beanmodel" version="10.1.3.39.84"
id="product_customer" BeanClass="product_customer"
isJavaBased="false">
<MethodAccessor IsCollection="false" Type="java.lang.String" id="process"
ReturnNodeName="Return">
<ParameterInfo id="input" Type="java.lang.String" isStructured="false"/>
</MethodAccessor>
</JavaBean>
hi, i just can not post the long information...test
ProductSession.wsdl
<?xml version = '1.0' encoding = 'UTF-8'?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://oracle/" name="ProductSessionWebServiceService" targetNamespace="http://oracle/">
<types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://oracle/" elementFormDefault="qualified">
<complexType name="Product">
<sequence>
<element name="brand" type="string" nillable="true"/>
<element name="price" type="float" nillable="true"/>
<element name="description" type="string" nillable="true"/>
<element name="category" type="string" nillable="true"/>
<element name="name" type="string" nillable="true"/>
<element name="prodid" type="long" nillable="true"/>
</sequence>
</complexType>
<element name="mergeEntity" type="tns:mergeEntity"/>
<complexType name="mergeEntity">
<sequence>
<element name="Object_1" type="anyType" nillable="true"/>
</sequence>
</complexType>
<element name="mergeEntityResponse" type="tns:mergeEntityResponse"/>
<complexType name="mergeEntityResponse">
<sequence>
<element name="return" type="anyType" nillable="true"/>
</sequence>
</complexType>
<element name="persistEntity" type="tns:persistEntity"/>
<complexType name="persistEntity">
<sequence>
<element name="Object_1" type="anyType" nillable="true"/>
</sequence>
</complexType>
<element name="persistEntityResponse" type="tns:persistEntityResponse"/>
<complexType name="persistEntityResponse">
<sequence>
<element name="return" type="anyType" nillable="true"/>
</sequence>
</complexType>
<element name="queryProductFindAll" type="tns:queryProductFindAll"/>
<complexType name="queryProductFindAll">
<sequence/>
</complexType>
<element name="queryProductFindAllResponse" type="tns:queryProductFindAllResponse"/>
<complexType name="queryProductFindAllResponse">
<sequence>
<element name="return" type="tns:ListOfProduct" nillable="true"/>
</sequence>
</complexType>
<complexType name="ListOfProduct">
<sequence>
<element name="item" type="tns:Product" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
<element name="removeProduct" type="tns:removeProduct"/>
<complexType name="removeProduct">
<sequence>
<element name="Product_1" type="tns:Product" nillable="true"/>
</sequence>
</complexType>
<element name="removeProductResponse" type="tns:removeProductResponse"/>
<complexType name="removeProductResponse">
<sequence/>
</complexType>
</schema>
</types>
<message name="ProductSessionWebService_mergeEntity">
<part name="parameters" element="tns:mergeEntity"/>
</message>
<message name="ProductSessionWebService_mergeEntityResponse">
<part name="parameters" element="tns:mergeEntityResponse"/>
</message>
<message name="ProductSessionWebService_persistEntity">
<part name="parameters" element="tns:persistEntity"/>
</message>
<message name="ProductSessionWebService_persistEntityResponse">
<part name="parameters" element="tns:persistEntityResponse"/>
</message>
<message name="ProductSessionWebService_queryProductFindAll">
<part name="parameters" element="tns:queryProductFindAll"/>
</message>
<message name="ProductSessionWebService_queryProductFindAllResponse">
<part name="parameters" element="tns:queryProductFindAllResponse"/>
</message>
<message name="ProductSessionWebService_removeProduct">
<part name="parameters" element="tns:removeProduct"/>
</message>
<message name="ProductSessionWebService_removeProductResponse">
<part name="parameters" element="tns:removeProductResponse"/>
</message>
<portType name="ProductSessionWebService">
<operation name="mergeEntity">
<input message="tns:ProductSessionWebService_mergeEntity"/>
<output message="tns:ProductSessionWebService_mergeEntityResponse"/>
</operation>
<operation name="persistEntity">
<input message="tns:ProductSessionWebService_persistEntity"/>
<output message="tns:ProductSessionWebService_persistEntityResponse"/>
</operation>
<operation name="queryProductFindAll">
<input message="tns:ProductSessionWebService_queryProductFindAll"/>
<output message="tns:ProductSessionWebService_queryProductFindAllResponse"/>
</operation>
<operation name="removeProduct">
<input message="tns:ProductSessionWebService_removeProduct"/>
<output message="tns:ProductSessionWebService_removeProductResponse"/>
</operation>
</portType>
<binding name="ProductSessionWebServiceSoapHttp" type="tns:ProductSessionWebService">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="mergeEntity">
<soap:operation soapAction=""/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="persistEntity">
<soap:operation soapAction=""/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="queryProductFindAll">
<soap:operation soapAction=""/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="removeProduct">
<soap:operation soapAction=""/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<service name="ProductSessionWebServiceService">
<port name="ProductSession" binding="tns:ProductSessionWebServiceSoapHttp">
<soap:address location="http://home-f045512354:8888/testproduct/ProductSession"/>
</port>
</service>
</definitions>
Similar Messages
-
Invoking BPEL process from ADF application - webservice connection failed
Hi,
I am trying to invoke a Bpel process from ADF page , I deployed the same in Standalone SOA server since I had to display some Human Task Forms.
I created a webservice data control out of the bpel process and dropped the process method in my page.
The page on which I dropped the process method stopped rendering and I checked the logs and found that I got the error mesage- webservice connection failed,the webservice url could not be reached and in the logs it also asks us to check if the connections.xml is available in the meta-inf directory. I checked the conections.xml is available in the EAR.
So any pointers here and any one faced this error anytime?
is there better ways to invoke the bpel flow from ADF page.
Thanks,
RobinHi,
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. -
Invoking BPEL process from ADF...
All,
I have deployed one BPEL process and invoking the same process from ADF test page. I created one Webservice Data Control for this process and did drag and drop to ADF page. It is working fine as expected.
When I created data control, I gave the web service URL as "http://<hostname>:<port>/orabpel/default/<processname>/.......<processname>.wsdl
My question is, if I want to deploy this BPEL process as well as this ADF page into another server, what will happen to this ADF data control ? since the hostname and port will not be similar for the new server. Do I need to change any params ?
Or when we create data control itself, are there any options to achieve this ?
Please let me know the details.
TIA,
-- prabaa !Hi,
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. -
Issue with webservice data control while invokin bpel process from ADF side
Hello Experts,
we are creating webservice data control to invoke bpel process from ADF side.
When I run the application and inovoke the bpel every thing is working fine.
But when we are changeing the instances from DEV to SIT the bpel url(hostname and port) will change.
So we just edited DataControls.dcx file and we just replaced the wsdl url and trying to run the applicaiton.
This time the applicaiton is not invoking the bpel process.
If I remove the webservice data control and recreate it with new WSDL url then it is working fine.
Can any one tell us what the exact issue is. Is there any other files do i need to modify or etc.
Thanks & Regards
GayazDataControls.dcx & connections.xml (.adf/META-INF)
-
Error Invoking a BPEL process from JAVA
Dear colleagues,
I'm facing a error at execution time when I'm invoking a BPEL process from java. My BPEL process is in a different server than my application. BPEL is running in SOA SUITE 10.1.3.1 and my JAVA application so far is in the embebed OC4J of my Jdveloper 10.1.3.3. I've seen different post with a similiar problem, but there wasn't never a solution!. Here you have the code following by the error:
***************** SOURCE **************************************
Locator locator = new Locator("default", "bpel");
IDeliveryService deliveryService =
(IDeliveryService)locator.lookupService
(IDeliveryService.SERVICE_NAME );
System.out.println(deliveryService.SERVICE_NAME);
System.out.println(deliveryService.LOCAL_SERVICE_NAME);
NormalizedMessage nm = new NormalizedMessage();
nm.addPart("payload", xml );
NormalizedMessage res =
deliveryService.request("LOAD_DB_5", "process", nm);
********************* ERROR ************************************
08/07/23 17:07:21 java.lang.Exception: Fallo al crear el bean "ejb/collaxa/system/DeliveryBean"; la excepción mostrada es: "javax.naming.NameNotFoundException: ejb/collaxa/system/DeliveryBean not found
at com.evermind.server.rmi.RMIServerContext.lookup(RMIServerContext.java:207)
at com.evermind.server.ApplicationContext.unprivileged_lookup(ApplicationContext.java:257)
at com.evermind.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 amaos.xml.loadData.LoadXml.loadData(LoadXml.java:31)
at amaos.view.beans.FileProcessor.fileUploaded(FileProcessor.java:159)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:146)
at oracle.adf.view.faces.component.UIXComponentBase.__broadcast(UIXComponentBase.java:1087)
at oracle.adf.view.faces.component.UIXEditableValue.broadcast(UIXEditableValue.java:247)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:269)
at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:363)
at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:98)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
at amaos.view.UploadQuestionary.doFilter(UploadQuestionary.java:24)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at amaos.view.UploadQuestionary.doFilter(UploadQuestionary.java:24)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:171)
at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
at com.evermind.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)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
08/07/23 17:07:21 at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:293)
08/07/23 17:07:21 at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:250)
08/07/23 17:07:21 at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:83)
08/07/23 17:07:21 at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:53)
08/07/23 17:07:21 at amaos.xml.loadData.LoadXml.loadData(LoadXml.java:31)
08/07/23 17:07:21 at amaos.view.beans.FileProcessor.fileUploaded(FileProcessor.java:159)
08/07/23 17:07:21 at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
08/07/23 17:07:21 at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
08/07/23 17:07:21 at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
08/07/23 17:07:21 at java.lang.reflect.Method.invoke(Method.java:585)
08/07/23 17:07:21 at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:146)
08/07/23 17:07:21 at oracle.adf.view.faces.component.UIXComponentBase.__broadcast(UIXComponentBase.java:1087)
08/07/23 17:07:21 at oracle.adf.view.faces.component.UIXEditableValue.broadcast(UIXEditableValue.java:247)
08/07/23 17:07:21 at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:269)
08/07/23 17:07:21 at javax.faces.component.UIViewRoot.processValidators(UIViewRoot.java:363)
08/07/23 17:07:21 at com.sun.faces.lifecycle.ProcessValidationsPhase.execute(ProcessValidationsPhase.java:98)
08/07/23 17:07:21 at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
08/07/23 17:07:21 at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
08/07/23 17:07:21 at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
08/07/23 17:07:21 at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
08/07/23 17:07:21 at amaos.view.UploadQuestionary.doFilter(UploadQuestionary.java:24)
08/07/23 17:07:21 at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
08/07/23 17:07:21 at amaos.view.UploadQuestionary.doFilter(UploadQuestionary.java:24)
08/07/23 17:07:21 at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
08/07/23 17:07:21 at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
08/07/23 17:07:21 at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
08/07/23 17:07:21 at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
08/07/23 17:07:21 at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
08/07/23 17:07:21 at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:171)
08/07/23 17:07:21 at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
08/07/23 17:07:21 at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
08/07/23 17:07:21 at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
08/07/23 17:07:21 at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
08/07/23 17:07:21 at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
08/07/23 17:07:21 at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
08/07/23 17:07:21 at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
08/07/23 17:07:21 at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
08/07/23 17:07:21 at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
08/07/23 17:07:21 at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239)
08/07/23 17:07:21 at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34)
08/07/23 17:07:21 at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880)
08/07/23 17:07:21 at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
08/07/23 17:07:21 at java.lang.Thread.run(Thread.java:595)
Any help is welcome!
ThanksHi
You are trying to create a locator object with default values which does not work at all times.Use Locator("default",prop) where prop is a properties object and set the values according to your environment.
The following properties values must be set
Properties props=new Properties();
props.setProperty("orabpel.platform","ias_10g");
props.setProperty("java.naming.factory.initial","com.evermind.server.rmi.RMIInitialContextFactory");
props.setProperty("java.naming.provider.url", "url value");
props.setProperty("java.naming.security.principal","domain user name");
props.setProperty("java.naming.security.credentials","password");
props.setProperty("dedicated.rmicontext", "true"); -
Error Occured while Invoking a BPEL Process from JAVA
Hi.....
When initiating a BPEL process from JAVA the code is working fine and the Process is getting initiated.But while using that code in J2EE project as a java code and while calling that method Error is occuring.....
Here by i am attaching my JAVA Code which runs as an applicateion and package which runs in Server....
JSP and Java Method Used:
JSP Code:
===============
<%@ page import=" bo.callbpel" %>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>FEATT - I30</title>
</head>
<body>
<%
String input=request.getParameter("dnvalue");
callbpel p=new callbpel();
String Output=p.Initiate(input);
out.print("The Input Given to the BPEL Process is : "+input);
%>
<BR><BR><BR><BR><BR><BR>
<%
out.print("The Reply from BPEL Process is : "+Output);
%>
</body>
</html>
Java Code:
package bo;
import com.oracle.bpel.client.Locator;
import com.oracle.bpel.client.NormalizedMessage;
import com.oracle.bpel.client.delivery.IDeliveryService;
import java.util.Map;
import java.util.Properties;
import oracle.xml.parser.v2.XMLElement;
/*import javax.servlet.RequestDispatcher;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest ;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession; */
//import java.util.*;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
public class callbpel {
public String Initiate(String value){
String replyText=null;
String input = value;
System.out.println(input);
String xmlInput= "<ns1:AccessDBBPELProcessRequest xmlns:ns1=\"http://xmlns.oracle.com/AccessDBBPEL\"><ns1:input>"+input+"</ns1:input></ns1:AccessDBBPELProcessRequest>";
String xml="<ns1:BPELProcess1ProcessRequest xmlns:ns1=\"http://xmlns.oracle.com/BPELProcess1\">";
xml=xml+"<ns1:input>"+input+"</ns1:input>";
xml=xml+"</ns1:BPELProcess1ProcessRequest>";
try{
Properties props=new Properties();
props.setProperty("orabpel.platform","ias_10g");
props.setProperty("java.naming.factory.initial","com.evermind.server.rmi.RMIInitialContextFactory");
props.setProperty("java.naming.provider.url","opmn:ormi://157.227.132.226:6003:home/orabpel");
props.setProperty("java.naming.security.principal","oc4jadmin");
props.setProperty("java.naming.security.credentials","oc4jadmin");
props.setProperty("dedicated.rmicontext", "true");
Locator locator = new Locator("default", "bpel", props);
String uniqueBpelId = com.collaxa.cube.util.GUIDGenerator.generateGUID();
//System.out.println(uniqueBpelId);
//java.util.Map msgProps = new HashMap();
System.out.println("After creating the locator object......");
IDeliveryService deliveryService =(IDeliveryService)locator.lookupService(IDeliveryService.SERVICE_NAME);
System.out.println("Before creating the NormalizedMessage object......");
NormalizedMessage nm = new NormalizedMessage();
System.out.println("After creating the NormalizedMessage object.*.*.*...");
//msgProps.put("conversationId",uniqueBpelId);
//nm.setProperty("conversationId",uniqueBpelId);
nm.addPart("payload", xml);
System.out.println("Before creating response object......");
NormalizedMessage res = deliveryService.request("BPELProcess1", "process", nm);
System.out.println("After calling the BPELProcess1 .*.*.*...");
Map payload = res.getPayload();
System.out.println("BPEL called");
XMLElement xmlEl=(oracle.xml.parser.v2.XMLElement)payload.get("payload");
replyText=xmlEl.getText();
System.out.println("Reply from BPEL Process>>>>>>>>>>>>> "+replyText);
catch (Exception e) {
System.out.println("Exception : "+e);
e.printStackTrace();
return replyText;
While Creating and Object for the Class callbpel and Whilw Calling that Method
callbpel p=new callbpel();
String Output=p.Initiate(input);
Its throwing an Error:
Error Occured is:
After creating the locator object......
Before creating the NormalizedMessage object......
After creating the NormalizedMessage object.*.*.*...
Before creating response object......
Apr 24, 2008 9:12:00 AM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet jsp threw exception
java.lang.NoClassDefFoundError: javax/ejb/EJBException
at com.oracle.bpel.client.util.ExceptionUtils.handleServerException(ExceptionUtils.java:76)
at com.oracle.bpel.client.delivery.DeliveryService.getDeliveryBean(DeliveryService.java:254)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:83)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:53)
at bo.callbpel.Initiate(callbpel.java:55)
at org.apache.jsp.output_jsp._jspService(output_jsp.java:55)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Unknown Source)
For Running JSP i am Using Eclipse 3.2.0 and apache-tomcat-5.5.25
Please Provide me a Solution......
Thanks in Advance.....
Regards,
Suresh KHave got the same problem. Scenario at my end is little different though.
I am trying to invoke a BPEL process from an ESB Service.
I am trying to look into it..
However, would be grateful, if someone can give some insight into this since many are running into this issue without being able to fix.
Ashish. -
Invoking a BPEL process from a WS
Errors occurred when I tried to invoke a BPEL process from a WS. The BPEL process was deployed in Local PM server and the WS was deployed in local OC4J server of JDeveloper 10g.
在Java class 发布成WS,部署在JDeveloper 10g中的oc4j服务器里,调用本机的BPEL流程出错,
WS coding as below:
WS代码如下:
package zbht.com;
import com.oracle.bpel.client.Locator;
import com.oracle.bpel.client.NormalizedMessage ;
import com.oracle.bpel.client.dispatch.IDeliveryService ;
import java.util.Date;
import com.oracle.services.bpel.task.IWorklistService;
import com.oracle.services.bpel.task.ITask;
public class test
public test()
* @webmethod
public void getBPEL(String str1,String str2)
try{
String xml = "<BPELProcess xmlns=\"http://xmlns.oracle.com/BPELProcess\">"
+ "<input>"+str1+"</input>"
+ "<input1>"+str2+"</input1>"
+ "</BPELProcess>";
System.out.println(xml);
// String xml="<OrgName xmlns=\"http://sse.org.cn/poc\">"+OrgName+"</OrgName>";
Locator locator = new Locator("default","bpel");
System.out.println("123");
IDeliveryService deliveryService = (IDeliveryService)locator.lookupService(IDeliveryService.SERVICE_NAME);
System.out.println("1234");
// construct the normalized message and send to Oracle BPEL Process Manager
NormalizedMessage nm = new NormalizedMessage( );
System.out.println("12345");
nm.addPart("payload" , xml );
deliveryService.post("BPELProcess", "initiate", nm);
}catch(Exception e)
e.printStackTrace();
Process source coding as below:
流程代码:
<process name="BPELProcess" targetNamespace="http://xmlns.oracle.com/BPELProcess" 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://zbht/com/test.wsdl" xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap" xmlns:bpelx="http://schemas.oracle.com/bpel/extension" xmlns:client="http://xmlns.oracle.com/BPELProcess" xmlns:ora="http://schemas.oracle.com/xpath/extension" xmlns:orcl="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc">
<partnerLinks>
<partnerLink name="client" partnerLinkType="client:BPELProcess" myRole="BPELProcessProvider"/>
<partnerLink myRole="testPortType_Role" name="PartnerLink_1" partnerRole="testPortType_Role" partnerLinkType="ns1:testPortType_PL"/>
</partnerLinks>
<variables>
<variable name="inputVariable" messageType="client:BPELProcessRequestMessage"/>
<variable name="outputVariable" messageType="client:BPELProcessResponseMessage"/>
<variable name="Invoke_1_test_InputVariable" messageType="ns1:test0Request"/>
<variable name="Invoke_1_test_OutputVariable" messageType="ns1:test0Response"/>
</variables>
<sequence name="main">
<receive name="receiveInput" partnerLink="client" portType="client:BPELProcess" operation="process" variable="inputVariable" createInstance="yes"/>
<assign name="Assign_1">
<copy>
<from variable="inputVariable" part="payload" query="/client:BPELProcessProcessRequest/client:input"/>
<to variable="Invoke_1_test_InputVariable" part="str1"/>
</copy>
<copy>
<from variable="inputVariable" part="payload" query="/client:BPELProcessProcessRequest/client:input1"/>
<to variable="Invoke_1_test_InputVariable" part="str2"/>
</copy>
</assign>
<invoke name="Invoke_1" partnerLink="PartnerLink_1" portType="ns1:testPortType" operation="test" inputVariable="Invoke_1_test_InputVariable" outputVariable="Invoke_1_test_OutputVariable"/>
<assign name="Assign_2">
<copy>
<from variable="Invoke_1_test_OutputVariable" part="return"/>
<to variable="outputVariable" part="payload" query="/client:BPELProcessProcessResponse/client:result"/>
</copy>
</assign>
<reply name="replyOutput" partnerLink="client" portType="client:BPELProcess" operation="process" variable="outputVariable"/>
</sequence>
</process>
Error messages:
错误信息:
05/10/08 17:06:06 java.lang.Exception: Failed to create "ejb/collaxa/system/DomainManagerBean" bean; exception reported is: "javax.naming.NameNotFoundException: ejb/collaxa/system/DomainManagerBean not found at com.evermind.server.rmi.RMIContext.lookup(RMIContext.java:164) at com.evermind.server.ApplicationContext.lookup(ApplicationContext.java:333) at com.evermind.server.ApplicationContext.lookup(ApplicationContext.java:120) 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.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:47) at com.oracle.bpel.client.Locator.<init>(Locator.java:65) at zbht.com.test.getBPEL(test.java:29) at zbht.com.__testStatelessWrapper.invokeMethod(__testStatelessWrapper.java:101) at oracle.j2ee.ws.InvocationWrapper.invoke(InvocationWrapper.java:380) at oracle.j2ee.ws.RpcWebService.doGetRequest(RpcWebService.java:642) at oracle.j2ee.ws.BaseWebService.doGet(BaseWebService.java:1173) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source) 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:192) at java.lang.Thread.run(Thread.java:534)".05/10/08 17:06:06 at com.oracle.bpel.client.util.BeanRegistry.lookupDomainManagerBean(BeanRegistry.java:232)05/10/08 17:06:06 at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:83)05/10/08 17:06:06 at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:47)05/10/08 17:06:06 at com.oracle.bpel.client.Locator.<init>(Locator.java:65)05/10/08 17:06:06 at zbht.com.test.getBPEL(test.java:29)05/10/08 17:06:06 at zbht.com.__testStatelessWrapper.invokeMethod(__testStatelessWrapper.java:101)05/10/08 17:06:06 at oracle.j2ee.ws.InvocationWrapper.invoke(InvocationWrapper.java:380)05/10/08 17:06:06 at oracle.j2ee.ws.RpcWebService.doGetRequest(RpcWebService.java:642)05/10/08 17:06:06 at oracle.j2ee.ws.BaseWebService.doGet(BaseWebService.java:1173)05/10/08 17:06:06 at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)05/10/08 17:06:06 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)05/10/08 17:06:06 at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)05/10/08 17:06:06 at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source)05/10/08 17:06:06 at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:649)05/10/08 17:06:06 at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)05/10/08 17:06:06 at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)05/10/08 17:06:06 at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)05/10/08 17:06:06 at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)05/10/08 17:06:06 at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)05/10/08 17:06:06 at java.lang.Thread.run(Thread.java:534)
ThanksHey,
no big deal, this is because the Locator you use, runs in, say local mode,
use the other API constructor in locator, which gets a hashtable.
Tutorial is available in samples\tutorials\102.InvokingProcesses\rmi
Locator locator = new Locator("default","bpel",props);
The reason why you get that "notFoundEx" is because you are not in the same rmi.context bel runs in. -
Invoking a BPEL process from a Java application
Hello all
I am trying to invoke a BPEL process from a JSP. The JSP is deployed in a different weblogic domain (different from the BPEL weblogic domain).
I am getting the following error messages. Can some one help ??
java.lang.Exception: Failed to create "ejb/collaxa/system/DomainManagerBean" bean; exception reported is: "javax.naming.NameNotFoundException: While trying to lookup 'ejb.collaxa/system/DomainManagerBean' didn't find subcontext 'ejb' Resolved ; remaining name 'ejb/collaxa/system/DomainManagerBean'
at weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingNode.java:858)
at weblogic.jndi.internal.BasicNamingNode.lookupHere(BasicNamingNode.java:225)
at weblogic.jndi.internal.ServerNamingNode.lookupHere(ServerNamingNode.java:154)
at weblogic.jndi.internal.BasicNamingNode.lookup(BasicNamingNode.java:188)
at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:237)
at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:336)
at javax.naming.InitialContext.lookup(InitialContext.java:347)
at com.collaxa.cube.util.CXBeanRegistry.lookupDomainManagerBean(CXBeanRegistry.java:207)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:84)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:48)
at com.oracle.bpel.client.Locator.(Locator.java:59)
at jsp_servlet.__invokehelloworld._jspService(__invokehelloworld.java:139)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6350)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:96)
at com.oracle.bpel.client.auth.DomainAuthFactory.authenticate(DomainAuthFactory.java:48)
at com.oracle.bpel.client.Locator.(Locator.java:59)
at jsp_servlet.__invokehelloworld._jspService(__invokehelloworld.java:139)
at weblogic.servlet.jsp.JspBase.service(JspBase.java:33)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:971)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:402)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6350)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3635)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2585)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
Thanks
Mahesh :)G'd morning petr,
check out 102.invokingProcesses tutorials but not the jsp one.. look into rmi, and into the context properties.. That should help figuring out what/s wrong .. (looks like you try an in-container lookup)
/clemens -
Invoking a BPEL process from a diffrent server.
Hello
I am trying to invoke a Bpel process from a diffrent server than the one where Soa Suite is installed and I am getting the folowing error:
java.lang.Exception: Failed to create "ejb/collaxa/system/DeliveryBean" bean; exception reported is: "javax.naming.NameNotFoundException: ejb/collaxa/system/DeliveryBean not found
at com.evermind.server.rmi.RMIClientContext.lookup(RMIClientContext.java:52)
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 Invoke.main(Invoke.java:35)
at com.oracle.bpel.client.util.BeanRegistry.lookupDeliveryBean(BeanRegistry.java:293)
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 Invoke.main(Invoke.java:35)
The same client works fine when running it from the same machine where the Soa Suite is installed.
Does anyone know what can be the problem?
Regards Corneliuhi....
the same error is coming for me when i am in local server itself.
I am using Eclipse and BPEL server....
hereby i am attaching my code:
import com.oracle.bpel.client.Locator;
import com.oracle.bpel.client.NormalizedMessage;
import com.oracle.bpel.client.dispatch.IDeliveryService;
import java.util.Map;
import java.util.*;
import javax.naming.*;
public class initiate {
* @param args
public static void main(String[] args)
String xml="<ns1:BPELProcess1ProcessRequest xmlns:ns1=\"http://xmlns.oracle.com/BPELProcess1\">";
xml=xml+"<ns1:input>natraj</ns1:input>";
xml=xml+"</ns1:BPELProcess1ProcessRequest>";
try{
Locator loc = null;
Hashtable jndi = new Hashtable();
jndi.put(Context.PROVIDER_URL, "http://localhost:8888/BPELConsole");
jndi.put(Context.INITIAL_CONTEXT_FACTORY, "com.evermind.server.rmi.RMIInitialContextFactory");
jndi.put(Context.SECURITY_PRINCIPAL, "oc4jadmin");
jndi.put(Context.SECURITY_CREDENTIALS, "oc4jadmin");
jndi.put("dedicated.connection", "true");
loc = new Locator("default", "bpel", jndi);
IDeliveryService deliveryService = (IDeliveryService)loc.lookupService(IDeliveryService.SERVICE_NAME );
NormalizedMessage nm = new NormalizedMessage();
nm.addPart("payload", xml);
//deliveryService.post("BPELProcess1", "initiate", nm);
NormalizedMessage res = deliveryService.request("BPELProcess1", "process", nm);
Map payload = res.getPayload();
System.out.println( "BPELProcess CreditRatingService executed!<br>" );
System.out.println( "Credit Rating is " + payload.get("payload") );
catch (Exception e)
System.out.println("Exception"+e);
//System.out.println( "BPELProcess initiated!" );
ERROR:
Exceptionjava.lang.Exception: Failed to create "ejb/collaxa/system/DeliveryBean" bean; exception reported is: "javax.naming.NamingException: Invalid provider URL
at com.evermind.server.rmi.RMIInitialContextFactory.getInitialContext(RMIInitialContextFactory.java:172)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
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.request(DeliveryService.java:83)
at com.oracle.bpel.client.delivery.DeliveryService.request(DeliveryService.java:53)
at initiate.main(initiate.java:54)
Please provide me a solution...
thanks in advance -
Invoking a BPEL process from java
Hello,
I tried invoking a BPEL process from java. I got the following error:
Error deserializing
return value: java.io.InvalidClassException:
javax.xml.namespace.QName, local class incompatible:
classdesc stream serialVersionUID = ..., local class serialVersionUID = ...
Thank you for helping me.Hello,
Here is the code I use:
Properties props = new Properties();
Locator locator = null;
props.put("orabpel.platform", "ias_10g" );
props.put("java.naming.factory.initial","com.evermind.server.rmi.RMIInitialContextFactory" );
props.put("java.naming.provider.url","opmn:ormi://host:port/orabpel" );
props.put("java.naming.security.principal", "adminuser" );
props.put("java.naming.security.credentials", "mdp" );
String securityCredentials = "adminuser";
String selectedDomain = "default";
locator = new Locator(selectedDomain,securityCredentials,props);
IBPELProcessHandle procs[] = locator.listProcesses();
The error is:
Exception in thread "main" java.rmi.UnmarshalException: Error deserializing return-value: java.io.InvalidClassException: com.oracle.bpel.client.BPELProcessHandle; local class incompatible: stream classdesc serialVersionUID = 5429682712928177644, local class serialVersionUID = 8176841433835717563
at com.oracle.bpel.client.util.ExceptionUtils.handleServerException(ExceptionUtils.java:82)
at com.oracle.bpel.client.Locator.listProcesses(Locator.java:309)
Thanks for help.
Edited by: 857737 on 14 sept. 2012 10:00 -
Invoking a BPEL process from a PL/SQL procedure(URGENT)
hello,
Is it possible to invoke a BPEL process from a pl/sql procedure??
Please reply ...Yes it is.
On my current project i needed this too.
http://orasoa.blogspot.com/2006/11/calling-bpel-process-with-utldbws.html
Re: Error running demo PL/SQL consuming web services
I used this utl_http example:
declare
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:='<?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/testtask">
<ns1:testtaskProcessRequest><ns1:input>leeg</ns1:input></ns1:testtaskProcessRequest>
</soap:Body>
</soap:Envelope>';
http_req:= utl_http.begin_request('http://yourhostname/orabpel/default/testtask/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; -
Invoke a bpel process from Java API
All,
I got an error when I tried to invoke a bpel process from java api. Can anyone help?
I got the following errors:
<2007-08-14 10:10:11,986> <ERROR> <default.collaxa.cube.xml> com.oracle.bpel.client.BPELFault: faultName: {{http://schemas.xmlsoap.org/ws/2003/03/business-process/}selectionFailure}
messageType: {null}
parts: {{summary=oracle.xml.parser.v2.XMLElement@da5c23}}
<2007-08-14 10:10:12,158> <ERROR> <default.collaxa.cube.xml> <XMLElement__CXPM::save> ORABPEL-09219
Cannot save element.
An attempt to save the element "EssayScoringDetailsCollection" has failed. Because this element is not a root element and for some reason the scope has reference to this element, scope should have references ONLY to root elements.
at com.collaxa.cube.xml.dom.XMLElement__CXPM.save(XMLElement__CXPM.java:82)
at com.collaxa.cube.engine.core.PersistenceService.save(PersistenceService.java:259)
at com.collaxa.cube.engine.types.bpel.CXMessageVariable__CXPM.save(CXMessageVariable__CXPM.java:182)
at com.collaxa.cube.engine.core.PersistenceService.save(PersistenceService.java:259)
at com.collaxa.cube.engine.persist.BaseScope__CXPM.save(BaseScope__CXPM.java:170)
at com.collaxa.cube.engine.persist.Scope__CXPM.save(Scope__CXPM.java:97)
at com.collaxa.cube.engine.core.PersistenceService.save(PersistenceService.java:259)
at com.collaxa.cube.engine.enc.ScopeContextSerializer.serializeContext(ScopeContextSerializer.java:587)
at com.collaxa.cube.engine.enc.ScopeContextSerializer.toBin(ScopeContextSerializer.java:99)
at com.collaxa.cube.engine.adaptors.common.BaseCubeInstancePersistenceAdaptor.store(BaseCubeInstancePersistenceAdaptor.java:543)
at com.collaxa.cube.engine.adaptors.olite.CubeInstancePersistenceAdaptor.store(CubeInstancePersistenceAdaptor.java:387)
at com.collaxa.cube.engine.data.CubeInstancePersistenceMgr.store(CubeInstancePersistenceMgr.java:367)
at com.collaxa.cube.engine.CubeEngine.store(CubeEngine.java:5008)
at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5266)
at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1083)
at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.createAndInvoke(CubeEngineBean.java:132)
at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.syncCreateAndInvoke(CubeEngineBean.java:161)
at sun.reflect.GeneratedMethodAccessor158.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:396)
at com.evermind.server.ThreadState.runAs(ThreadState.java:622)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxRequiresNewInterceptor.invoke(TxRequiresNewInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at CubeEngineBean_LocalProxy_4bin6i8.syncCreateAndInvoke(Unknown Source)
at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequestAnyType(DeliveryHandler.java:499)
at com.collaxa.cube.engine.delivery.DeliveryHandler.initialRequest(DeliveryHandler.java:451)
at com.collaxa.cube.engine.delivery.DeliveryHandler.request(DeliveryHandler.java:125)
at com.collaxa.cube.ejb.impl.DeliveryBean.request(DeliveryBean.java:95)
at sun.reflect.GeneratedMethodAccessor157.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:396)
at com.evermind.server.ThreadState.runAs(ThreadState.java:622)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at DeliveryBean_RemoteProxy_4bin6i8.request(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.rmi.RmiMethodCall.run(RmiMethodCall.java:53)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)
<2007-08-14 10:10:12,158> <ERROR> <default.collaxa.cube> <BaseCubeSessionBean::logError> Error while invoking bean "cube engine": Cannot serialize DOM element.
Failed to serialize the DOM element "EssayScoringDetailsCollection" to binary format. The exception reported is Cannot save element.
An attempt to save the element "EssayScoringDetailsCollection" has failed. Because this element is not a root element and for some reason the scope has reference to this element, scope should have references ONLY to root elements.
ORABPEL-09221
Cannot serialize DOM element.
I did the following in my java application:
//create the BPEL locator object to find the BPEL process
Locator locator = new Locator("default", "welcome1", jndi);
//just for fun, display all the available BPEL processes
/*for(IBPELProcessHandle ibph : locator.listProcesses()) {
System.out.println(ibph.getProcessModel());
IDeliveryService deliveryService = (IDeliveryService)locator.lookupService(IDeliveryService.SERVICE_NAME);
//construct the normalized message
NormalizedMessage nm = new NormalizedMessage();
String xml = "<ns1:PromptsCollection xmlns:ns1='http://xmlns.oracle.com/pcbpel/adapter/db/top/DBSelectPrompt'>" +
"<ns1:Prompts>" +
"<ns1:promptId>" pr.getPromptId()"</ns1:promptId>" +
"<ns1:calibrated>"+pr.getCalibrated().toString()+"</ns1:calibrated>" +
"<ns1:ibn>"+pr.getIbn()+"</ns1:ibn>" +
"<ns1:promptType>"+pr.getPromptType()+"</ns1:promptType>" +
"<ns1:promptsetId>"+pr.getPromptset().getPromptsetId()+"</ns1:promptsetId>" +
"<ns1:vantagePromptId>"+pr.getVantagePromptId()+"</ns1:vantagePromptId>" +
"<ns1:promptKey>"+pr.getPromptKey()+"</ns1:promptKey>" +
"<ns1:holdStatusCode>"+pr.getHoldStatus()+"</ns1:holdStatusCode>" +
"<ns1:holdEssayTotalCount>"+pr.getHoldEssayTotalCount()+"</ns1:holdEssayTotalCount>" +
"<ns1:holdEssayCurrentCount>"+pr.getHoldEssayCurrentCount()+"</ns1:holdEssayCurrentCount>" +
"<ns1:approvedStatus>"+pr.getApprovedStatus()+"</ns1:approvedStatus>" +
"<ns1:rowChangeDate>"+pr.getRowChangeDate()+"</ns1:rowChangeDate>" + "<ns1:programId>1001</ns1:programId>" +
"<ns1:programId></ns1:programId>" +
"<ns1:characterCountMin>"+pr.getCharacterCountMin()+"</ns1:characterCountMin>" +
"<ns1:durationMin>"+pr.getDurationMin()+"</ns1:durationMin>" +
"<ns1:rangeFindingFlag>"+pr.getRangeFindingFlag()+"</ns1:rangeFindingFlag>" +
"<ns1:durationFlag></ns1:durationFlag>" +
"<ns1:characterCountMax>"+pr.getCharacterCountMax().intValue()+"</ns1:characterCountMax>" +
"<ns1:durationMax>"+pr.getDurationMax().intValue()+"</ns1:durationMax>" +
"<ns1:rangeCount>"+ rangeCount+"</ns1:rangeCount>" +
"</ns1:Prompts>" +
"</ns1:PromptsCollection>" ;
/*String xml = "<ns1:PromptsCollection xmlns:ns1='http://xmlns.oracle.com/pcbpel/adapter/db/top/DBSelectPrompt'>" +
"<ns1:Prompts>" +
"<ns1:promptId>" pr.getPromptId().toString()"</ns1:promptId>" +
"<ns1:calibrated>"+pr.getCalibrated().toString()+"</ns1:calibrated>" +
"<ns1:ibn>"+pr.getIbn()+"</ns1:ibn>" +
"<ns1:promptType>"+pr.getPromptType()+"</ns1:promptType>" +
"<ns1:promptsetId>"+pr.getPromptset().getPromptsetId().toString()+"</ns1:promptsetId>" +
"<ns1:vantagePromptId>"+pr.getVantagePromptId()+"</ns1:vantagePromptId>" +
"<ns1:promptKey>"+pr.getPromptKey()+"</ns1:promptKey>" +
"<ns1:holdStatusCode>"+pr.getHoldStatus()+"</ns1:holdStatusCode>" +
"<ns1:holdEssayTotalCount>"+pr.getHoldEssayTotalCount()+"</ns1:holdEssayTotalCount>" +
"<ns1:holdEssayCurrentCount>"+pr.getHoldEssayCurrentCount()+"</ns1:holdEssayCurrentCount>" +
"<ns1:approvedStatus>"+pr.getApprovedStatus()+"</ns1:approvedStatus>" +
"<ns1:rowChangeDate>"+pr.getRowChangeDate()+"</ns1:rowChangeDate>" +
"<ns1:programId></ns1:programId>" +
"<ns1:characterCountMin>"+pr.getCharacterCountMin()+"</ns1:characterCountMin>" +
"<ns1:durationMin>"+pr.getDurationMin()+"</ns1:durationMin>" +
"<ns1:rangeFindingFlag>"+pr.getRangeFindingFlag()+"</ns1:rangeFindingFlag>" +
"<ns1:durationFlag></ns1:durationFlag>" +
"<ns1:characterCountMax>"+pr.getCharacterCountMax()+"</ns1:characterCountMax>" +
"<ns1:durationMax>"+pr.getDurationMax()+"</ns1:durationMax>" +
"<ns1:rangeCount>"+pr.getRangeCount()+"</ns1:rangeCount>" +
"</ns1:Prompts>" +
"</ns1:PromptsCollection>" ; */
//add the payload part to the message with the xml variable
nm.addPart("payload", xml.trim());
//make the call to the BPEL process
NormalizedMessage response = deliveryService.request("UpdatePromptStatus", "process",nm);
Map payload = response.getPayload();I'm getting all of the same errors, but in a slightly different situation.
<2007-08-23 09:11:46,086> <ERROR> <default.collaxa.cube.xml> com.oracle.bpel.client.BPELFault: faultName: {{http://schemas.xmlsoap.org/ws/2003/03/business-process/}selectionFailure}
messageType: {null}
parts: {{summary=oracle.xml.parser.v2.XMLElement@d454cf}}
<2007-08-23 09:11:46,633> <ERROR> <default.collaxa.cube.xml> <XMLElement__CXPM::save> ORABPEL-09219
Cannot save element.
An attempt to save the element "SfCaseCollection" has failed. Because this element is not a root element and for some reason the scope has reference to this element, scope should have references ONLY to root elements.
at com.collaxa.cube.xml.dom.XMLElement__CXPM.save(XMLElement__CXPM.java:82)
at com.collaxa.cube.engine.core.PersistenceService.save(PersistenceService.java:259)
at com.collaxa.cube.engine.types.bpel.CXMessageVariable__CXPM.save(CXMessageVariable__CXPM.java:182)
at com.collaxa.cube.engine.core.PersistenceService.save(PersistenceService.java:259)
at com.collaxa.cube.engine.persist.BaseScope__CXPM.save(BaseScope__CXPM.java:170)
at com.collaxa.cube.engine.persist.Scope__CXPM.save(Scope__CXPM.java:97)
at com.collaxa.cube.engine.core.PersistenceService.save(PersistenceService.java:259)
at com.collaxa.cube.engine.enc.ScopeContextSerializer.serializeContext(ScopeContextSerializer.java:587)
at com.collaxa.cube.engine.enc.ScopeContextSerializer.toBin(ScopeContextSerializer.java:99)
at com.collaxa.cube.engine.adaptors.common.BaseCubeInstancePersistenceAdaptor.store(BaseCubeInstancePersistenceAdaptor.java:543)
at com.collaxa.cube.engine.adaptors.oracle.CubeInstancePersistenceAdaptor.store(CubeInstancePersistenceAdaptor.java:83)
at com.collaxa.cube.engine.data.CubeInstancePersistenceMgr.store(CubeInstancePersistenceMgr.java:367)
at com.collaxa.cube.engine.CubeEngine.store(CubeEngine.java:5008)
at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5266)
at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1771)
at com.collaxa.cube.engine.ejb.impl.CubeEngineBean.handleWorkItem(CubeEngineBean.java:306)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:396)
at com.evermind.server.ThreadState.runAs(ThreadState.java:622)
at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
at CubeEngineBean_LocalProxy_4bin6i8.handleWorkItem(Unknown Source)
at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handle(PerformMessageHandler.java:45)
at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:138)
at com.collaxa.cube.engine.dispatch.BaseScheduledWorker.process(BaseScheduledWorker.java:70)
at com.collaxa.cube.engine.ejb.impl.WorkerBean.onMessage(WorkerBean.java:86)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.interceptor.system.SetContextActionInterceptor.invoke(SetContextActionInterceptor.java:44)
at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
at oracle.j2ee.connector.messageinflow.MessageEndpointImpl.OC4J_invokeMethod(MessageEndpointImpl.java:297)
at WorkerBean_EndPointProxy_4bin6i8.onMessage(Unknown Source)
at oracle.j2ee.ra.jms.generic.WorkConsumer.run(WorkConsumer.java:266)
at oracle.j2ee.connector.work.WorkWrapper.runTargetWork(WorkWrapper.java:242)
at oracle.j2ee.connector.work.WorkWrapper.doWork(WorkWrapper.java:215)
at oracle.j2ee.connector.work.WorkWrapper.run(WorkWrapper.java:190)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:814)
at java.lang.Thread.run(Thread.java:595)
Did you ever find a solution to your problem?
My situation is that I'm running a process that grabs data from a salesforce.com web service and dumps some of the data back into my local database. The process croaks after processing 850 or so records. I have also increased my PermSize memory to 512M.
Any ideas why all of a sudden after processing that many records it would stop working?
Thanks,
Adam -
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 -
Invoking asynchronous BPEL process from java ui
Hi,
I am invoking an asynchronous BPEL process from java ui.
I read somewhere that i can obtain an instance handler uing the lookupInstance() method of class Locator using the conversation id provided by the class NormalizedMessage.
My code looks like this
// Connect to Oracle BPEL server
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("MyLoanFlow", "initiate", nm);
//Obtain the instance handler
IInstanceHandle handle = locator.lookupInstance(NormalizedMessage.CONVERSATION_ID);
But this is giving the error - can not find any instance with conversation id 'conversationId'.
Also, if i try to obtain a list of instance handles associated with a process , it does not contain the most recently created instance
IBPELProcessHandle ph = locator.lookupProcess("MyLoanFlow");
IInstanceHandle[] iHandler = ph.listInstances();
out.println(iHandler.length + "<br>");
if i invoke the process for the first time the output is 0.
can you please help me. it is urgent.Hi Sudipto,
Regarding your second question,
deliveryService.post("MyLoanFlow", "initiate", nm);
IBPELProcessHandle ph = locator.lookupProcess("MyLoanFlow");
IInstanceHandle[] iHandler = ph.listInstances();
out.println(iHandler.length + "<br>");
---- returns 0 ---
This is because MyLoanFlow is an asynchronous process in your case. So the control is returned to your java block immediately after the request for a new instance is posted. And your second line of code(querying for the list of instances) is executed even before the instance is created on the server side. You can verify this in two ways:
1. try creating an instance of a synchronous process using IDeliveryService.request - this will always result in the increment since the current thread is blocked till the new instance is created.
2. for your case, you can try
Thread.currentThread().sleep(500); - just allow the server some time for completing the instance before you query it for the list of instances..
and wrt question 1,
//Obtain the instance handler
IInstanceHandle handle = locator.lookupInstance(NormalizedMessage.CONVERSATION_ID);
But this is giving the error - can not find any instance with conversation id 'conversationId'.
For setting the conversationId, you could do so by including the following inside your .bpel file
<bpelx:exec name="test-setConversationId" language="java" version="1.4">
<![CDATA[
setConversationId("conversationId");
]]>
</bpelx:exec>
The code:
IInstanceHandle ins = locator.lookupInstanceByConversationId(NormalizedMessage.CONVERSATION_ID);
should fetch you the required instance in this case.
HTH,
Anuj
Maybe you are looking for
-
Windows 8.1 On-Screen Keyboard shows comma in numeric layout
Even changing my regional settings to use the full stop "." I still get the comma in the numeric layout of the On-Screen Keyboard. Changed the location/region to South Africa as well, still not helping. Is there any way to change this?
-
I have a CS4 and would like to install Camera Raw 8.6. How do i do it?
I have a CS4 and would like to install Camera Raw 8.6. How do i do it? The reason being in LR5 when I want to edit the images in Photoshop Layers, the message comes that I need to install Camera Raw 8.6 for compatibility. Even After installing Camer
-
Where are my backed up apps after upgrade?
I just up graded my I Touch to 4.2 and it said my apps were backed up prior to the upgrade. However, now I cannot find them. When I sync to the store they do not auto load. Any ideas where they are and how I can get my apps back? Many of them were ga
-
Can anyone please advise how to print the date on photos on my HP C6380 All in One printer. I have managed to change the settings to do it before but now it is defeating me. I would like to make it a default if I can. This question was solved. Vie
-
My iPhone 4S Won't Launch Any Apps! Please Help!
Hi there. I have a brand new iPhone 4S 64GB in White which I received direct from the Apple store earlier today in the UK. I upgraded from a 32GB White iPhone 4 which I had upgraded to IOS 5 on my Mac. The phone seemed to be fine and after spending s