1 bpel process invoking two osb proxies of same wsdl

Hello,
We have:
SCA composite with BPEL process (BPEL1)
1 WSDL with multiple operations (op1, op2) in OSB
OSB proxy services (PS1->based on wsdl op1, PS2 -> based on wsdl op2). Both of them are based on same WSDL.
Now I am trying to invoke PS1 and PS2 from BPEL1 by creating two partner links each referring to two different operations
(op1 and op2) of WSDL. But I am getting error when trying to invoke PS2 because even if I invoke PS2, it is calling
operation 1(op1).
So my question is, can we invoke multiple operations of same wsdl in one BPEL process instance?

maybe the selection algorithm on the proxy service isn't the correct one, so it can't dispatch to the correct operation
can you check the value setting of Operation Selection Configuration > Selection Algorithm on you proxy service on the osb
we mostly use SOAP Body Type

Similar Messages

  • Avoid 2 instances of a BPEL process executing an activity at the same time?

    Hi,
    Is there a way I can avoid execution of an activity from two or more different instances of the same BPEL process at the same time?
    I would like to know if I can lock the activity across BPEL instances so that only one instace can execute an activity at a time?
    Kindly give me possible ways I can achieve this? We are using BPEL PM 10.1.2.
    Thanks,
    Sasi Bhushan

    As HEWizard said, you need to look at 'singleton'
    http://blogs.oracle.com/matt/2006/08/23
    http://orasoa.blogspot.com/2007/05/create-singleton-process.html
    the idea behind a singleton is you can only make one instance of the process. In the process you can handle the sap-activity.

  • Bpel process invoking an ESB problem

    Hi All,
    Im fairly new to bpel and i encountered the following problem. I am receiving an input, and transforming the data to a canonical model, i then send that canonical model data to an ESB to invoke another bpel process but when im invoking im getting the following error,
    </Invoke_EBS_execute_InputVariable>
    </input>
    - <fault>
    - <remoteFault xmlns="http://schemas.oracle.com/bpel/extension">
    - <part name="summary">
    <summary>
    exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message transmission failure, response code: 500
    </summary>
    </part>
    </remoteFault>
    </fault>
    </messages>
    [2009/02/25 08:03:52] "{http://schemas.oracle.com/bpel/extension}remoteFault" has been thrown.less
    - <remoteFault xmlns="http://schemas.oracle.com/bpel/extension">
    - <part name="summary">
    <summary>
    exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message transmission failure, response code: 500
    </summary>
    </part>
    </remoteFault>
    below is the bpel audit trail of my bpel process
    <process>
    <sequence>
    receiveInput
    [2009/02/25 08:03:52] Received "inputVariable" call from partner "client"less
    View xml document
    TransformPS_to_Can
    [2009/02/25 08:03:52] Updated variable "outputCan"less
    - <outputCan>
    - <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="payload">
    - <CreateCanonicalModel xmlns:ns1="http://up.ac.za/integration/canonical/CostCentreCanonicalABC" xmlns="http://up.ac.za/integration/canonical/CostCentreCanonicalABC">
    - <can:OPER_UNIT_TBL xmlns:can="http://xmlns.up.ac.za/Enterprise/FSM/schemas/UP_OPER_UNIT_ATTRIB_BPEL_CANONICAL">
    <can:SETID>
    UP000
    </can:SETID>
    <can:OPERATING_UNIT>
    A00001
    </can:OPERATING_UNIT>
    <can:FROM_DATE/>
    <can:DESCR>
    A00001-xyz001
    </can:DESCR>
    <can:SHORT_DESCR>
    A00001
    </can:SHORT_DESCR>
    <can:LONG_DESCR>
    A00001
    </can:LONG_DESCR>
    <can:BUDGETARY_ONLY>
    N
    </can:BUDGETARY_ONLY>
    <can:APPROVAL_STATUS/>
    <can:SUBMIT_DTTM>
    2000-01-01T00:00:00.000000-08:00
    </can:SUBMIT_DTTM>
    </can:OPER_UNIT_TBL>
    <tx:transactionAction xmlns:tx="http://up.ac.za/integration/canonical/TransactionContext">
    Update
    </tx:transactionAction>
    - <tx:transactionContext xmlns:tx="http://up.ac.za/integration/canonical/TransactionContext">
    <tx:userId>
    P4366093
    </tx:userId>
    <tx:uniquePersonId>
    0001
    </tx:uniquePersonId>
    <tx:personName>
    test person - DEV id
    </tx:personName>
    <tx:dateTime>
    2009-02-19T15:44:32.000000-08:00
    </tx:dateTime>
    <tx:context>
    FIN001 = FIN/GL/PS/NAT
    </tx:context>
    </tx:transactionContext>
    </CreateCanonicalModel>
    </part>
    </outputCan>
    assign (94)
    [2009/02/25 08:03:52] Updated variable "Invoke_EBS_execute_InputVariable"less
    - <Invoke_EBS_execute_InputVariable>
    - <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="CreateCanonicalModel">
    - <CreateCanonicalModel xmlns:ns1="http://up.ac.za/integration/canonical/CostCentreCanonicalABC" xmlns="http://up.ac.za/integration/canonical/CostCentreCanonicalABC">
    - <can:OPER_UNIT_TBL xmlns:can="http://xmlns.up.ac.za/Enterprise/FSM/schemas/UP_OPER_UNIT_ATTRIB_BPEL_CANONICAL">
    <can:SETID>
    UP000
    </can:SETID>
    <can:OPERATING_UNIT>
    A00001
    </can:OPERATING_UNIT>
    <can:FROM_DATE/>
    <can:DESCR>
    A00001-xyz001
    </can:DESCR>
    <can:SHORT_DESCR>
    A00001
    </can:SHORT_DESCR>
    <can:LONG_DESCR>
    A00001
    </can:LONG_DESCR>
    <can:BUDGETARY_ONLY>
    N
    </can:BUDGETARY_ONLY>
    <can:APPROVAL_STATUS/>
    <can:SUBMIT_DTTM>
    2000-01-01T00:00:00.000000-08:00
    </can:SUBMIT_DTTM>
    </can:OPER_UNIT_TBL>
    <tx:transactionAction xmlns:tx="http://up.ac.za/integration/canonical/TransactionContext">
    Update
    </tx:transactionAction>
    - <tx:transactionContext xmlns:tx="http://up.ac.za/integration/canonical/TransactionContext">
    <tx:userId>
    P4366093
    </tx:userId>
    <tx:uniquePersonId>
    0001
    </tx:uniquePersonId>
    <tx:personName>
    Barry Lauth - DEV id
    </tx:personName>
    <tx:dateTime>
    2009-02-19T15:44:32.000000-08:00
    </tx:dateTime>
    <tx:context>
    FIN001 = FIN/GL/PS/NAT
    </tx:context>
    </tx:transactionContext>
    </CreateCanonicalModel>
    </part>
    </Invoke_EBS_execute_InputVariable>
    Invoke_EBS (faulted)
    [2009/02/25 08:03:52] Faulted while invoking operation "execute" on provider "EBS_PartnerLink".less
    - <messages>
    - <input>
    - <Invoke_EBS_execute_InputVariable>
    - <part xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="CreateCanonicalModel">
    - <CreateCanonicalModel xmlns:ns1="http://up.ac.za/integration/canonical/CostCentreCanonicalABC" xmlns="http://up.ac.za/integration/canonical/CostCentreCanonicalABC">
    - <can:OPER_UNIT_TBL xmlns:can="http://xmlns.up.ac.za/Enterprise/FSM/schemas/UP_OPER_UNIT_ATTRIB_BPEL_CANONICAL">
    <can:SETID>
    UP000
    </can:SETID>
    <can:OPERATING_UNIT>
    A00001
    </can:OPERATING_UNIT>
    <can:FROM_DATE/>
    <can:DESCR>
    A00001-xyz001
    </can:DESCR>
    <can:SHORT_DESCR>
    A00001
    </can:SHORT_DESCR>
    <can:LONG_DESCR>
    A00001
    </can:LONG_DESCR>
    <can:BUDGETARY_ONLY>
    N
    </can:BUDGETARY_ONLY>
    <can:APPROVAL_STATUS/>
    <can:SUBMIT_DTTM>
    2000-01-01T00:00:00.000000-08:00
    </can:SUBMIT_DTTM>
    </can:OPER_UNIT_TBL>
    <tx:transactionAction xmlns:tx="http://up.ac.za/integration/canonical/TransactionContext">
    Update
    </tx:transactionAction>
    - <tx:transactionContext xmlns:tx="http://up.ac.za/integration/canonical/TransactionContext">
    <tx:userId>
    P4366093
    </tx:userId>
    <tx:uniquePersonId>
    0001
    </tx:uniquePersonId>
    <tx:personName>
    Barry Lauth - DEV id
    </tx:personName>
    <tx:dateTime>
    2009-02-19T15:44:32.000000-08:00
    </tx:dateTime>
    <tx:context>
    FIN001 = FIN/GL/PS/NAT
    </tx:context>
    </tx:transactionContext>
    </CreateCanonicalModel>
    </part>
    </Invoke_EBS_execute_InputVariable>
    </input>
    - <fault>
    - <remoteFault xmlns="http://schemas.oracle.com/bpel/extension">
    - <part name="summary">
    <summary>
    exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message transmission failure, response code: 500
    </summary>
    </part>
    </remoteFault>
    </fault>
    </messages>
    [2009/02/25 08:03:52] "{http://schemas.oracle.com/bpel/extension}remoteFault" has been thrown.less
    - <remoteFault xmlns="http://schemas.oracle.com/bpel/extension">
    - <part name="summary">
    <summary>
    exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message transmission failure, response code: 500
    </summary>
    </part>
    </remoteFault>
    </sequence>
    [2009/02/25 08:03:52] "BPELFault" has not been caught by a catch block.
    [2009/02/25 08:03:52] BPEL process instance "20038" cancelled
    </process>
    I have no clue on how to resolve this issue. Anyones assistance in this matter will be much appreciated.
    Thanks
    Krish

    I have seen a similar issue but it was more to do with deployment, and clusters.
    The issue could be with the second BPEL process. When you run it does the process state switch to off?
    What I would do is undeploy both BPEL processes. Bounce the SOA Suite then redeploy both instances.
    Sometimes BPEL holds on to the cache this will make sure of it.
    cheers
    James

  • How to obtain response from asyn bpel process invoked through java

    I need to get the response from Asynchronous bpel process which im invoking through java using DeliveryPost method whose return type is void.

    I was able to write java code for the above process
    the code is here
    NormalizedMessage nm = new NormalizedMessage( );
    String uniqueBpelId = com.collaxa.cube.util.GUIDGenerator.generateGUID();
    java.util.Map msgProps = new HashMap();
    // NormalizedMessage res = deliveryService.request("OraFormsService", "initiate", nm);
    //deliveryService.post(null,null,null,null);
    msgProps.put("conversationId",uniqueBpelId);
    nm.setProperty("conversationId",uniqueBpelId);//to set the property for this message
    nm.addPart("payload",xml1);//to add to the payload of this message
    deliveryService.post("OraFormsService", "initiate", nm);
    // System.out.println("con1 "+IDeliveryConstants.STATE_HANDLED);
    StringBuffer buf = new StringBuffer();
    WhereCondition cond;
    cond = new WhereCondition(buf.append(SQLDefs.IM_state).append( " = " ).append(IDeliveryConstants.STATE_UNRESOLVED ).toString() );
    //cond = WhereConditionHelper.whereInstancesOpen();
    IInvokeMetaData imd[] = locator.listInvokeMessages(cond);
    String ids[] = new String[imd.length];
    // print out the partial process information
    // for processes in manual recovery status on invoke
    for (int i = 0; i < imd.length; i++)
    System.out.println("ConversationId=" +
    imd.getConversationId());
    System.out.println("ProcessId=" +
    imd[i].getProcessId());
    System.out.println("State=" + imd[i].getState());
    ids[i] = imd[i].getConversationId();
    Thanks for the Help

  • Bpel Process invoking different BPEL process

    Hi all
    We have a situation here. It goes like this.
    We have a requirement to call another BPEL process from ours. The calling process is fine. But the called process threw a lot of error due to which we discarded it and created a new process. We have mapped the same to the original calling process. Now,even after undeploying the discarded process, our main process is still calling the old process that is not even there on server and is constantly completinh in an unintended manner.
    If anyone has faced this issue previously, kindly throw some light on this.
    Vijay

    I don't understand "mapped the same to the original calling process." If you created a new callED process with the same name as the original callED process, you will want to replace the callED processl partnerlink and WSDL in the callING process, as another poster suggested.
    If the new callED process has the same name and exactly the same WSDL as the old one, you could be able to get away without changing the callING process. You have to be very careful to clear the old/bad callED process from the server. This may be overkill, but I suggest doing this in the BPEL console:
    - Select the old/bad process in the BPEL console, go to the Manage tab, select Undeploy.
    - Go to the Administration tab, Actions subtab, hit the Clear WSDL Cache button.
    - Delete all files from your JDeveloper BPEL project output folder and recompile.
    - Deploy your process to the BPEL server.
    Good Luck!

  • Format of location of deployed bpel process - to access from osb

    We have oracle 11g Soa suite installed. I deployed a sample BPEL process in the server. I want to call this BPEL from OSB.
    For this, wsdl of the bpel process should have http url specified in "wsdl:service" element
    What is the format of http url for the BPEL process wsdl to specify in wsdl:service-->soap:address location

    If you want to call 11g bpel from osb 10.x you can't use the bpel10g transport. So for as far i know you just use the wsdl of the bpel process and use http transport to call it from osb.
    The wsdl-url of the bpel service you can just find in the 11g console

  • Invoke OnMessage activity of a running BPEL process instance...

    Hi,
    We are using Oracle BPEL 10.1.2.0.2. I am willing to invoke a running instance of a BPEL process (Timer) in following scenario:
    The 'Timer' BPEL Process gets initiated, and logs its instance-id into the database
    'Timer' process waits on an OnMessage activity for another process to invoke it
    Another BPEL process selects the instance-id of 'Timer' process from the database
    The question is: in the above scenario, can the 2nd BPEL process invoke the OnMessage activity of the Timer BPEL process. I did search through the Locator API but was unable to find a method which can invoke a running BPEL instance.
    I am not willing to use correlation here because correlation does not guaranty the invocation of the target BPEL process and also does not generate any error if no instance gets invoked.
    Thanks,
    Upendra Jariya.

    JDK 5.0 includes sample code for java.lang.management API in the <JDK>/demo/management directory. In particular, demo/management/VerboseGC demonstrates how to use the java.lang.management API to print GC statistics in a similar way to -verbose:gc.
    You can reference this demo program and make appropriate modification, for example, just to call java.lang.management.MemoryMXBean.setVerbose() operation to turn on/off the -verbose:gc tracing.

  • Unable execute a BPEL process calling esb db outbound service

    getting the following error while invoking an esb db service from a synchronous bpel process
    <Faulthttp://schemas.xmlsoap.org/soap/envelope/>
    <faultcode>env:Server</faultcode>
    <faultstring>com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is 3f3d2d8955322f32:-40315b29:10d588f5253:-7fd3. Please check the process instance for detail.</faultstring>
    </Fault>
    Please help.
    Thanx
    AJ

    thanx for your reply Dave,
    When I get this error, nothing shows up in the instance screen.
    Also, I had to configure the partner link using the wsdl provided in definitions tab in the esb console (since the service explorer in jdev throws an exception: service not found". So, i did cut and paste only and it parsed perfectly. i am using the concrete url available in the definitions tab in esb console.
    And what wud u mean by esb rt endpoint?
    Where can I find the wsil browser in bpel
    I am still tryig to figure out the cause of the problem here.
    I tried the following today:
    - created a new esb project
    - created a new esb system
    - created a db adaptor service with a simple select from a db table (The db table has only one record and one column)
    - created a routing service for the same, with no routing rules or transformations
    - registered the same with the esb server
    - created a new synchronous bpel process
    - created a partner link (using concrete wsdl available in the definitions tab in esb control)
    - assigned the input and output variable to the partner link.
    - deployed the bpel process
    - initiated a new instance of the same from the bpel console
    - received the following error "<Faulthttp://schemas.xmlsoap.org/soap/envelope/>
    <faultcode>env:Server</faultcode>
    <faultstring>com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is 3f3d2d8955322f32:3ac11df3:10d5df12505:-7fb6. Please check the process instance for detail.</faultstring>
    </Fault>"
    - in the bpel console flow of the instance found the following error stack
    "<bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>exception on JaxRpc invoke:
    start fault message:
    oracle.tip.esb.server.common.exceptions.BusinessEventRetriableException: An unhandled exception has been thrown in the ESB system. The exception reported is: "oracle.tip.esb.server.common.exceptions.BusinessEventRetriableException: An unhandled exception has been thrown in the ESB system. The exception reported is: "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0
         at java.util.Vector.get(Vector.java:710)
         at oracle.tip.esb.server.common.wsif.WSIFInvoker.readResponseHeader(Unknown Source)
         at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(Unknown Source)
         at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(Unknown Source)
         at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.nextService(Unknown Source)
         at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.processBusinessEvent(Unknown Source)
         at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatchNonRoutingService(Unknown Source)
         at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(Unknown Source)
         at oracle.tip.esb.server.dispatch.BusinessEvent.raise(Unknown Source)
         at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(Unknown Source)
         at oracle.tip.esb.server.service.EsbRouterSubscription.onBusinessEvent(Unknown Source)
         at oracle.tip.esb.server.dispatch.EventDispatcher.executeSubscription(Unknown Source)
         at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscription(Unknown Source)
         at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscriptions(Unknown Source)
         at oracle.tip.esb.server.dispatch.EventDispatcher.dispatchRoutingService(Unknown Source)
         at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(Unknown Source)
         at oracle.tip.esb.server.dispatch.BusinessEvent.raise(Unknown Source)
         at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.raiseEvent(Unknown Source)
         at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.processMessage(Unknown Source)
         at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:869)
         at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
         at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:460)
         at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
         at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
         at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:177)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
         at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(Unknown Source)
         at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(Unknown Source)
         at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.nextService(Unknown Source)
         at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.processBusinessEvent(Unknown Source)
         at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatchNonRoutingService(Unknown Source)
         at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(Unknown Source)
         at oracle.tip.esb.server.dispatch.BusinessEvent.raise(Unknown Source)
         at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(Unknown Source)
         at oracle.tip.esb.server.service.EsbRouterSubscription.onBusinessEvent(Unknown Source)
         at oracle.tip.esb.server.dispatch.EventDispatcher.executeSubscription(Unknown Source)
         at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscription(Unknown Source)
         at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscriptions(Unknown Source)
         at oracle.tip.esb.server.dispatch.EventDispatcher.dispatchRoutingService(Unknown Source)
         at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(Unknown Source)
         at oracle.tip.esb.server.dispatch.BusinessEvent.raise(Unknown Source)
         at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.raiseEvent(Unknown Source)
         at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.processMessage(Unknown Source)
         at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:869)
         at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349)
         at oracle.j2ee.ws.server.provider.ProviderProcessor.doRequestProcessing(ProviderProcessor.java:460)
         at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:114)
         at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:96)
         at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:177)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)
         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302)
         at com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190)
         at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0
         at java.util.Vector.get(Vector.java:710)
         at oracle.tip.esb.server.common.wsif.WSIFInvoker.readResponseHeader(Unknown Source)
         ... 34 more
    :end fault message</summary>
    </part></bindingFault>"
    - the instance was visible in esb console too and the following error message was present
    "An unhandled exception has been thrown in the ESB system. The exception reported is: "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0 at java.util.Vector.get(Vector.java:710) at oracle.tip.esb.server.common.wsif.WSIFInvoker.readResponseHeader(Unknown Source) at oracle.tip.esb.server.common.wsif.WSIFInvoker.executeOperation(Unknown Source) at oracle.tip.esb.server.common.wsif.WSIFInvoker.nextService(Unknown Source) at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.nextService(Unknown Source) at oracle.tip.esb.server.service.impl.outadapter.OutboundAdapterService.processBusinessEvent(Unknown Source) at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatchNonRoutingService(Unknown Source) at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(Unknown Source) at oracle.tip.esb.server.dispatch.BusinessEvent.raise(Unknown Source) at oracle.tip.esb.utils.EventUtils.raiseBusinessEvent(Unknown Source) at oracle.tip.esb.server.service.EsbRouterSubscription.onBusinessEvent(Unknown Source) at oracle.tip.esb.server.dispatch.EventDispatcher.executeSubscription(Unknown Source) at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscription(Unknown Source) at oracle.tip.esb.server.dispatch.InitialEventDispatcher.processSubscriptions(Unknown Source) at oracle.tip.esb.server.dispatch.EventDispatcher.dispatchRoutingService(Unknown Source) at oracle.tip.esb.server.dispatch.InitialEventDispatcher.dispatch(Unknown Source) at oracle.tip.esb.server.dispatch.BusinessEvent.raise(Unknown Source) at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.raiseEvent(Unknown Source) at oracle.tip.esb.server.service.impl.soap.EventOracleSoapProvider.processMessage(Unknown Source) at oracle.j2ee.ws.server.provider.ProviderProcessor.doEndpointProcessing(ProviderProcessor.java:869) at oracle.j2ee.ws.server.WebServiceProcessor.invokeEndpointImplementation(WebServiceProcessor.java:349) at oracle"
    apologies for the long msg, but i just wanted you to give the whole picture in one shot. I am really struggling to figure this out.
    thanx
    AJ
    Message was edited by:
    jashutosh
    Message was edited by:
    jashutosh

  • Java proxy generation exc. for web service correspond. to a BPEL process

    Hello,
    I wrote a BPEL process (having two client methods) that is exposed as an RPC web service. One of the web services invoked by this BPEL process uses a complex data type that is defined in a separate schema XSD file (imported in the corresponding WSDLs). This complex data type is also returned by one of the methods exposed by the BPEL process. From the BPEL point of view everything is fine now: the process was successfully built, deployed and initiated from the BPEL console.
    When I tried to generate the web service Java proxy classes from the BPEL process corresponding WSDL, I obtained an error signaling that complex type defined in the imported XSD file cannot be found. The exception is:
    [java] oracle.wsdl.internal.WSDLException: Schema type not found: QName(htt
    p://oracle/bpeltest/array/ArrayTrial.xsd, ArrayOforacle_bpeltest_array_Customer)
    [java] at oracle.wsdl.DefinitionsImpl.findSchemaType(DefinitionsImpl.ja
    va:511)
    [java] at oracle.wsdl.toolkit.XSDJavaTypeMapper.getArrayComponentType(X
    SDJavaTypeMapper.java:169)
    [java] at oracle.wsdl.toolkit.XSDJavaTypeMapper.getJavaType(XSDJavaType
    Mapper.java:141)
    [java] at oracle.wsdl.toolkit.XSDJavaTypeMapper.generateBeans(XSDJavaTy
    peMapper.java:251)
    [java] at oracle.wsdl.toolkit.XSDJavaTypeMapper.getJavaType(XSDJavaType
    Mapper.java:156)
    [java] at oracle.wsdl.toolkit.XSDJavaTypeMapper.getJavaType(XSDJavaType
    Mapper.java:106)
    [java] at oracle.wsdl.toolkit.MethodGenerator.declareMethod(MethodGener
    ator.java:152)
    [java] at oracle.wsdl.toolkit.MethodGenerator.generateMethod(MethodGene
    rator.java:35)
    [java] at oracle.wsdl.toolkit.ProxyGenerator.generateJavaProxy(ProxyGen
    erator.java:333)
    [java] at oracle.wsdl.toolkit.ProxyGenerator.generateJavaProxy(ProxyGen
    erator.java:96)
    [java] at oracle.wsdl.toolkit.ProxyGenerator.generateJavaProxy(ProxyGen
    erator.java:68)
    [java] at oracle.j2ee.ws.tools.WsAssmProxyGenerator.generateJavaProxy(W
    sAssmProxyGenerator.java:165)
    [java] at oracle.j2ee.ws.tools.WsAssmProxyGenerator.processProxy(WsAssm
    ProxyGenerator.java:134)
    [java] at oracle.j2ee.ws.tools.WsAssmProxyGenerator.clientGenerate(WsAs
    smProxyGenerator.java:112)
    [java] at oracle.j2ee.ws.tools.WsAssembler.assemble(WsAssembler.java:96
    [java] at oracle.j2ee.ws.tools.WsAssembler.main(WsAssembler.java:66)
    [java] Exception in thread "main"
    When I tried to generate the stub from JDeveloper, the complex type was replaced with a certain dummy "UnknownType".
    Do you have any hint?
    Thanks in advance!
    Regards,
    Marinel

    You should post this question to the JDev Web Service forum. I know that they had some limitation in 9.0.4 with some complex types. It is my understanding that those problems have been addressed in 10.1.3. They would be the right people to confirm this. -Edwin

  • Development and Deployment of BPEL processes in ALBPM 6.0

    All,
    I tried to develop a simple BPEL 2.0 process in ALBPM 6.0 and noticed that the tool does not generate an endpoint automatically to expose the BPEL as a web service. I had to create my own bidning and the service interface to get rid of a bunch of compile errors. I typed my address for the BPEL manually as 'http://localhost:9000/bpel'. I reloaded the server, but could not find a service at this address.
    What are the correct steps of creating a BPEL process so that it deploys correctly and can be called externally as a web service?
    Any help is very much appreciated. Thanks in advance!

    Ok. The WSDL actually published, but when I tried to invoke it from ALBPM process on another engine I got this error:
    Caused by: java.lang.AssertionError: Could not retrieve name
    at fuego.soaptype.SoapCall.initCallArguments(SoapCall.java:172)
    at fuego.soaptype.SoapCall.<init>(SoapCall.java:94)
    etc...
    What is the correct process for generating WSDLs for BPEL processes with ALBPM 6.0? Can WSDL location address be generated automatically? What does "Could not retrieve name" error relate to?

  • How do I call a simple java class from a bpel process?

    Hi.
    In JDeveloper 10.1.4.3.0 I've created a simple java class that does an ftp get operation followed by an unzip. The class uses some 3rd part libraries (jars).
    I want to use a simple bpel process to schedule a daily execution of this java class, and deploy it all to our SOA-server, - and was looking into using the <bpelx:exec> function.
    The java class and the bpel process is all stored in the same JDeveloper project.
    How do I put this together so that both my java class and the necessary jars are available to the bpel process?
    I've looked into the JavaExecSample.bpel, and it's says something about "...the class com.otn.samples.javaexec.CreditCalculator is locally packaged with this BPEL process".
    How do I do that?
    Can I make it and test it all locally from my workstation (only JDeveloper installed, I guess there's nothing that can execute the bpel code?), or do I have to compile class etc (make war-file?) and deploy to SOA server (BPEL-INF/lib or classes?) before anything can be tested?
    (I guess all this is simple, once you know how, but being a newbie to this I need a shove in the right direction :-)
    Regards,
    -Haakon-

    To create a java class and dependent jars inside the BPEL process project you need to do the following:
    1. Right click on your BPEL process project and select New and then Java Class from the Items.
    2. Make the BPEL process project, JDeveloper would compile the java classes and add them into the BPEL suite case jar, see the output folder and check the BPEL suite case jar file for java classes and dependent jars.
    You can test your Java classes from JDeveloper IDE, no need to deploy the classes on SOA server. When you make the BPEL project it compiles .bpel files and Java classes. You can test your classes once .bpel file and java classes compiled successfully.
    Regards,
    Dharmendra
    http://soa-howto.blogspot.com

  • BPEL Process Manager Generated WSDL

    We are working on an ant build framework for a Oracle SOA Suite 10.1.3.3.0 project, consisting of a main BPEL process that is synchronously calling another BPEL process via an ESB. This second process uses the same ESB to call back the original process.
    This of course leads to a circular deployment dependency, where the ESB requires both BPEL WSDLs before it can be deployed, and each BPEL process needs a WSDL for the ESB endpoint to be deployed.
    We are attempting to short circuit this dependency by deploying a web application registry for the WSDLs in question, but this presents us with a further problem. The WSDLs used to communicate with the BPEL processes and ESB are not the project WSDLs, but appear to actually be describing web service wrappers generated on the application server side. In order to use the proposed web registry, we would need to be able to predictably generate these WSDLs (or at least representative versions).
    In our example it looks like a case of generating binding and service elements and merging them with the BPEL project WSDL , but we do not feel that it is safe to assume anything about this behaviour and would prefer some kind of documentation to inform our decision.
    So, a couple of questions:
    1) Can anyone provide documentation and/or description of how the required web service endpoints are generated by the application server/BPEL process manager?
    2) Alternatively, is there a better way of avoiding or dealing with the aforementioned circular dependency?
    Thankyou

    I was wondering too what would be a could solution for the "circular dependency" situation.
    In my current project we will build some mockup-bpels(just for the interface) for the time being.

  • BPEL process

    Error occurs when i tried to invoke creditservice through SOAOrderBooking BPEL process..
    Error(453):
    [Error ORABPEL-10007]: unresolved messageType
    [Description]: in line 453 of "I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\bpel\SOAOrderBooking.bpel", WSDL messageType "{http://xmlns.oracle.com/ias/pcbpel/NotificationService}EmailNotificationRequest" of variable "varNotificationReq" is not defined in any of the WSDL files.
    [Potential fix]: Make sure the WSDL messageType "{http://xmlns.oracle.com/ias/pcbpel/NotificationService}EmailNotificationRequest" is defined in one of the WSDLs referenced by the deployment descriptor.
    Error(455):
    [Error ORABPEL-10007]: unresolved messageType
    [Description]: in line 455 of "I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\bpel\SOAOrderBooking.bpel", WSDL messageType "{http://xmlns.oracle.com/ias/pcbpel/NotificationService}ArrayOfResponse" of variable "varNotificationResponse" is not defined in any of the WSDL files.
    [Potential fix]: Make sure the WSDL messageType "{http://xmlns.oracle.com/ias/pcbpel/NotificationService}ArrayOfResponse" is defined in one of the WSDLs referenced by the deployment descriptor.
    And my SOAOrderBooking BPEL (SOAOrderBooking.bpel) code is:
    <!--
    // Oracle JDeveloper BPEL Designer
    // Created: Fri Jan 06 13:47:07 PST 2006
    // Author: Roman
    // Purpose: Asynchronous BPEL Process
    -->
    <process name="SOAOrderBooking"
    targetNamespace="http://www.globalcompany.com/ns/OrderBooking"
    xmlns="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:wfcommon="http://xmlns.oracle.com/bpel/workflow/common"
    xmlns:ns4="http://www.globalcompany.com/ns/order"
    xmlns:ns24="http://xmlns.oracle.com/pcbpel/adapter/db/top/Order"
    xmlns:ns30="http://rapidservice.soademo.org/types/"
    xmlns:rules="http://xmlns.oracle.com/bpel/rules"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:ns16="http://xmlns.oracle.com/pcbpel/adapter/db/top/Orders/Orders"
    xmlns:ns27="http://www.globalcompany.com/ns/OrderBooking/rules"
    xmlns:ns5="http://xmlns.oracle.com/ias/pcbpel/NotificationService"
    xmlns:ora="http://schemas.oracle.com/xpath/extension"
    xmlns:ns31="http://creditservice.soademo.org/"
    xmlns:taskservice="http://xmlns.oracle.com/bpel/workflow/taskService"
    xmlns:ns32="http://creditservice.soademo.org/types/"
    xmlns:ns9="http://xmlns.oracle.com/pcbpel/adapter/db/top/OrderStatus"
    xmlns:ns17="http://www.globalcompany.com/ns/selectservice"
    xmlns:ns1="http://xmlns.oracle.com/bpel/rules"
    xmlns:ns25="http://selectservice.srdemo.org/"
    xmlns:ns2="http://xmlns.oracle.com/pcbpel/adapter/db/OrderStatus/"
    xmlns:ns26="http://www.globalcompany.com/ns/Fulfillment"
    xmlns:orcl="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc"
    xmlns:ns15="http://xmlns.oracle.com/pcbpel/adapter/db/Orders/"
    xmlns:ns10="http://www.globalcompany.com/ns/Fulfillment"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:ns20="http://www.oracle.com/webservices/internal/literal"
    xmlns:ns13="http://xmlns.oracle.com/bpel"
    xmlns:ns7="http://credit.soademo.org/"
    xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap"
    xmlns:wf="http://schemas.oracle.com/bpel/extension/workflow"
    xmlns:ns29="http://xmlns.oracle.com/bpel/services/IdentityService"
    xmlns:ns12="http://xmlns.oracle.com/pcbpel/adapter/db/OrderSequence/"
    xmlns:client="http://www.globalcompany.com/ns/OrderBooking"
    xmlns:ns23="http://www.globalcompany.com/ns/rapidservice"
    xmlns:ns18="http://xmlns.oracle.com/pcbpel/adapter/db/OrderSequence"
    xmlns:ns6="http://www.globalcompany.com/ns/credit"
    xmlns:ns28="http://www.globalcompany.com/ns/OrderBooking/DecisionService"
    xmlns:xref="http://www.oracle.com/XSL/Transform/java/oracle.tip.xref.xpath.XRefXPathFunctions"
    xmlns:ns22="http://www.globalcompany.com/ns/selectservice"
    xmlns:ns11="http://xmlns.oracle.com/bpel/services/IdentityService/xpath"
    xmlns:hwf="http://xmlns.oracle.com/bpel/workflow/xpath"
    xmlns:ns19="http://persistence.customerservice.soademo.org/"
    xmlns:ehdr="http://www.oracle.com/XSL/Transform/java/oracle.tip.esb.server.headers.ESBHeaderFunctions"
    xmlns:ns3="http://www.globalcompany.com/ns/customer"
    xmlns:ns14="http://www.globalcompany.com/ns/OrderBooking/ApprovalRequired"
    xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    xmlns:task="http://xmlns.oracle.com/bpel/workflow/task"
    xmlns:ns21="http://www.globalcompany.com/ns/credit.xsd"
    xmlns:ns8="http://xmlns.oracle.com/pcbpel/adapter/db/Order/">
    <!-- ================================================================= -->
    <!-- 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:SOAOrderBooking"
    myRole="SOAOrderBookingProvider"
    partnerRole="SOAOrderBookingRequester"/>
    <partnerLink name="OrderFulfillment" partnerRole="execute_pptProvider"
    partnerLinkType="ns26:execute_pptLT"/>
    <partnerLink name="RapidService" partnerRole="RapidQuote_Role"
    partnerLinkType="ns23:RapidQuote_PL"/>
    <partnerLink name="CustomerService" partnerRole="CustomerService_Role"
    partnerLinkType="ns3:CustomerService_PL"/>
    <partnerLink myRole="SelectServiceRequester" name="SelectService"
    partnerRole="SelectServiceProvider"
    partnerLinkType="ns17:SelectService_PL"/>
    <partnerLink name="OrderStatus" partnerRole="OrderStatus_role"
    partnerLinkType="ns2:OrderStatus_plt"/>
    <partnerLink name="Order" partnerRole="Order_role"
    partnerLinkType="ns8:Order_plt"/>
    <partnerLink name="OrderSequence" partnerRole="OrderSequence_role"
    partnerLinkType="ns12:OrderSequence_plt"/>
    <partnerLink name="CreditValidatingService" partnerRole="creditservice_Role"
    partnerLinkType="ns31:creditservice_PL"/>
    </partnerLinks>
    <!-- ================================================================= -->
    <!-- VARIABLES -->
    <!-- List of messages and XML documents used within this BPEL process -->
    <!-- ================================================================= -->
    <variables>
    <!-- Reference to the message passed as input during initiation -->
    <!-- Reference to the message that will be sent back to the
    requester during callback
    -->
    <variable name="inputVariable"
    messageType="client:SOAOrderBookingRequestMessage"/>
    <variable name="outputVariable"
    messageType="client:SOAOrderBookingResponseMessage"/>
    <variable name="OrderBookingFault"
    messageType="client:SOAOrderBookingFaultMessage"/>
    <variable name="customerServiceResponse"
    messageType="ns3:CustomerService_findCustomerByIdResponse"/>
    <variable name="requiresApproval" type="xsd:boolean"/>
    </variables>
    <faultHandlers>
    <catch faultName="client:OrderBookingFault"
    faultVariable="OrderBookingFault">
    <sequence name="Sequence_12">
    <scope name="SetOrderStatus">
    <variables>
    <variable name="orderStatusRequest"
    messageType="ns2:OrdersCollection_msg"/>
    </variables>
    <sequence name="Sequence_13">
    <assign name="AssignOrderStatus">
    <copy>
    <from variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:ID"/>
    <to variable="orderStatusRequest" part="OrdersCollection"
    query="/ns9:OrdersCollection/ns9:Orders/ns9:ordid"/>
    </copy>
    <copy>
    <from expression="string('canceled')"/>
    <to variable="orderStatusRequest" part="OrdersCollection"
    query="/ns9:OrdersCollection/ns9:Orders/ns9:status"/>
    </copy>
    <copy>
    <from variable="OrderBookingFault" part="payload"
    query="/client:SOAOrderBookingProcessFault/client:status"/>
    <to variable="orderStatusRequest" part="OrdersCollection"
    query="/ns9:OrdersCollection/ns9:Orders/ns9:comments"/>
    </copy>
    </assign>
    <invoke name="SetFaultedOrderStatus" partnerLink="OrderStatus"
    portType="ns2:OrderStatus_ptt" operation="update"
    inputVariable="orderStatusRequest"/>
    </sequence>
    </scope>
    </sequence>
    </catch>
    </faultHandlers>
    <!-- ================================================================= -->
    <!-- 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 SOAOrderBooking.wsdl
    -->
    <receive name="receiveInput" partnerLink="client"
    portType="client:SOAOrderBooking" operation="initiate"
    variable="inputVariable" createInstance="yes"/>
    <!-- Asynchronous callback to the requester.
    Note: the callback location and correlation id is transparently handled
    using WS-addressing.
    -->
    <scope name="InsertOrderIntoDB">
    <variables>
    <variable name="orderRequest" messageType="ns8:OrdersCollection_msg"/>
    <variable name="orderSequenceInput"
    messageType="ns12:OrderSequenceInput_msg"/>
    <variable name="orderSequenceOutput"
    messageType="ns12:OrderSequenceOutputCollection_msg"/>
    </variables>
    <sequence name="Sequence_11">
    <invoke name="GetOrderId" partnerLink="OrderSequence"
    portType="ns12:OrderSequence_ptt" operation="OrderSequence"
    inputVariable="orderSequenceInput"
    outputVariable="orderSequenceOutput"/>
    <assign name="AssignOrderStatus">
    <copy>
    <from variable="orderSequenceOutput"
    part="OrderSequenceOutputCollection"
    query="/ns18:OrderSequenceOutputCollection/ns18:OrderSequenceOutput/ns18:order_seq_id_gen.nextval"/>
    <to variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:ID"/>
    </copy>
    <copy>
    <from expression="string('pending')"/>
    <to variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:OrderInfo/ns4:OrderStatus"/>
    </copy>
    </assign>
    <assign name="TransformOrder">
    <bpelx:annotation>
    <bpelx:pattern>transformation</bpelx:pattern>
    </bpelx:annotation>
    <copy>
    <from expression="ora:processXSLT('TransformOrder.xsl',bpws:getVariableData('inputVariable','payload'))"/>
    <to variable="orderRequest" part="OrdersCollection"/>
    </copy>
    </assign>
    <invoke name="InsertOrder" partnerLink="Order" portType="ns8:Order_ptt"
    operation="write" inputVariable="orderRequest"/>
    </sequence>
    </scope>
    <scope name="CustomerService">
    <variables>
    <variable name="customerServiceRequest"
    messageType="ns3:CustomerService_findCustomerById"/>
    </variables>
    <sequence name="Sequence_9">
    <assign name="AssignRequest">
    <copy>
    <from variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:CustID"/>
    <to variable="customerServiceRequest" part="parameters"
    query="/ns3:findCustomerById/ns3:custid"/>
    </copy>
    </assign>
    <invoke name="GetCustInfo" partnerLink="CustomerService"
    portType="ns3:CustomerService" operation="findCustomerById"
    inputVariable="customerServiceRequest"
    outputVariable="customerServiceResponse"/>
    <assign name="AssignInitialCustomerResponse">
    <bpelx:append>
    <bpelx:from>
    <ns4:ShipTo xmlns:ns4="http://www.globalcompany.com/ns/order">
    <ns4:Name>
    <ns4:First/>
    <ns4:Last/>
    </ns4:Name>
    </ns4:ShipTo>
    </bpelx:from>
    <bpelx:to variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder"/>
    </bpelx:append>
    </assign>
    <assign name="AssignCustomerResponse">
    <copy>
    <from variable="customerServiceResponse" part="parameters"
    query="/ns3:findCustomerByIdResponse/ns3:return/ns3:fname"/>
    <to variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:ShipTo/ns4:Name/ns4:First"/>
    </copy>
    <copy>
    <from variable="customerServiceResponse" part="parameters"
    query="/ns3:findCustomerByIdResponse/ns3:return/ns3:lname"/>
    <to variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:ShipTo/ns4:Name/ns4:Last"/>
    </copy>
    </assign>
    </sequence>
    </scope>
    <scope name="CreditService">
    <variables>
    <variable name="validateRequest"
    messageType="ns31:Creditservice_verifyCC"/>
    <variable name="validateResponse"
    messageType="ns31:Creditservice_verifyCCResponse"/>
    </variables>
    <sequence name="Sequence_19">
    <assign name="InitializeInput">
    <copy>
    <from variable="customerServiceResponse" part="parameters"
    query="/ns3:findCustomerByIdResponse/ns3:return/ns3:creditcardtype"/>
    <to variable="validateRequest" part="parameters"
    query="/ns32:verifyCCElement/ns32:creditCard/ns32:ccType"/>
    </copy>
    <copy>
    <from variable="customerServiceResponse" part="parameters"
    query="/ns3:findCustomerByIdResponse/ns3:return/ns3:creditcardnumber"/>
    <to variable="validateRequest" part="parameters"
    query="/ns32:verifyCCElement/ns32:creditCard/ns32:ccNum"/>
    </copy>
    </assign>
    <invoke name="InvokeCreditService" partnerLink="CreditValidatingService"
    portType="ns31:creditservice" operation="verifyCC"
    inputVariable="validateRequest"
    outputVariable="validateResponse"/>
    <switch name="CheckCreditResponse">
    <case condition="bpws:getVariableData('validateResponse','parameters','/ns32:verifyCCResponseElement/ns32:result')='false'">
    <sequence name="Sequence_18">
    <assign name="AssignCreditErrorStatus">
    <copy>
    <from expression='string("Credit Card Invalid")'/>
    <to variable="OrderBookingFault" part="payload"
    query="/client:SOAOrderBookingProcessFault/client:status"/>
    </copy>
    </assign>
    <throw name="ThrowCreditFault"
    faultName="client:OrderBookingFault"
    faultVariable="OrderBookingFault"/>
    </sequence>
    </case>
    </switch>
    </sequence>
    </scope>
    <switch name="CheckForApproval">
    <case condition="string(bpws:getVariableData('requiresApproval')) != 'false'">
    <empty name="Empty_1"/>
    </case>
    </switch>
    <scope name="SelectSupplier">
    <variables>
    <variable name="selectManufacturerResponse"
    messageType="ns17:RequestQuote_processRequestQuoteResponse"/>
    <variable name="rapidManufacturerResponse"
    messageType="ns23:RequestQuotePortType_POItemsQuoteResponse"/>
    </variables>
    <sequence>
    <flow name="CallManufacturers">
    <sequence name="Sequence_2">
    <scope name="GetSelectMfrQuote">
    <variables>
    <variable name="manufacturerRequest"
    messageType="ns17:RequestQuote_processRequestQuote"/>
    </variables>
    <sequence name="Sequence_15">
    <assign name="TransformSelectRequest">
    <bpelx:annotation>
    <bpelx:pattern>transformation</bpelx:pattern>
    </bpelx:annotation>
    <copy>
    <from expression="ora:processXSLT('SelectTransformation.xsl',bpws:getVariableData('inputVariable','payload'))"/>
    <to variable="manufacturerRequest" part="parameters"/>
    </copy>
    </assign>
    <invoke name="InvokeSelectManufacturer"
    partnerLink="SelectService"
    portType="ns17:SelectService"
    operation="processRequestQuote"
    inputVariable="manufacturerRequest"/>
    <receive name="ReceiveSelectManufacturer" createInstance="no"
    partnerLink="SelectService"
    portType="ns17:SelectServiceCallback"
    operation="processRequestQuoteResponse"
    variable="selectManufacturerResponse"/>
    </sequence>
    </scope>
    </sequence>
    <sequence name="GetRapidMfrQuote">
    <scope name="CallRapidManufacturer">
    <variables>
    <variable name="manufacturerRequest"
    messageType="ns23:RequestQuotePortType_POItemsQuote"/>
    </variables>
    <sequence name="Sequence_6">
    <assign name="TransformRapidRequest">
    <bpelx:annotation>
    <bpelx:pattern>transformation</bpelx:pattern>
    </bpelx:annotation>
    <copy>
    <from expression="ora:processXSLT('RapidTransformation.xsl',bpws:getVariableData('inputVariable','payload'))"/>
    <to variable="manufacturerRequest" part="parameters"/>
    </copy>
    </assign>
    <invoke name="InvokeRapidManufacturer"
    partnerLink="RapidService" portType="ns23:RequestQuote"
    operation="POItemsQuote"
    inputVariable="manufacturerRequest"
    outputVariable="rapidManufacturerResponse"/>
    </sequence>
    </scope>
    </sequence>
    </flow>
    <switch name="SelectByPrice">
    <case condition="number(bpws:getVariableData('selectManufacturerResponse','parameters','/ns17:processRequestQuoteResponseElement/ns17:return/ns17:supplierPrice')) &lt; number(bpws:getVariableData('rapidManufacturerResponse','parameters','/ns23:POItemsQuoteResponse/ns30:return/ns30:supplierPrice'))">
    <assign name="AssignSelectManufacturer">
    <copy>
    <from variable="selectManufacturerResponse" part="parameters"
    query="/ns17:processRequestQuoteResponseElement/ns17:return/ns17:supplierPrice"/>
    <to variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:SupplierInfo/ns4:SupplierPrice"/>
    </copy>
    <copy>
    <from variable="selectManufacturerResponse" part="parameters"
    query="/ns17:processRequestQuoteResponseElement/ns17:return/ns17:supplierName"/>
    <to variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:SupplierInfo/ns4:SupplierName"/>
    </copy>
    </assign>
    </case>
    <otherwise>
    <assign name="AssignRapidManufacturer">
    <copy>
    <from variable="rapidManufacturerResponse" part="parameters"
    query="/ns23:POItemsQuoteResponse/ns30:return/ns30:supplierPrice"/>
    <to variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:SupplierInfo/ns4:SupplierPrice"/>
    </copy>
    <copy>
    <from variable="rapidManufacturerResponse" part="parameters"
    query="/ns23:POItemsQuoteResponse/ns30:return/ns30:supplierName"/>
    <to variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:SupplierInfo/ns4:SupplierName"/>
    </copy>
    </assign>
    </otherwise>
    </switch>
    </sequence>
    </scope>
    <scope name="PostFulfillmentReq">
    <variables>
    <variable name="orderFulfillmentRequest"
    messageType="ns26:PurchaseOrder_request"/>
    </variables>
    <faultHandlers>
    <catchAll>
    <empty/>
    </catchAll>
    </faultHandlers>
    <sequence name="Sequence_4">
    <assign name="initializeRequest">
    <copy>
    <from variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder"/>
    <to variable="orderFulfillmentRequest" part="PurchaseOrder"/>
    </copy>
    </assign>
    <invoke name="PostFulfillmentReq" partnerLink="OrderFulfillment"
    portType="ns26:execute_ppt" operation="execute"
    inputVariable="orderFulfillmentRequest"/>
    </sequence>
    </scope>
    <scope name="SetFinalOrderStatus">
    <variables>
    <variable name="orderStatusRequest"
    messageType="ns2:OrdersCollection_msg"/>
    </variables>
    <sequence name="Sequence_13">
    <assign name="AssignOrderStatus">
    <copy>
    <from variable="inputVariable" part="payload"
    query="/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:ID"/>
    <to variable="orderStatusRequest" part="OrdersCollection"
    query="/ns9:OrdersCollection/ns9:Orders/ns9:ordid"/>
    </copy>
    <copy>
    <from expression="string('completed')"/>
    <to variable="orderStatusRequest" part="OrdersCollection"
    query="/ns9:OrdersCollection/ns9:Orders/ns9:status"/>
    </copy>
    </assign>
    <invoke name="UpdateOrderStatus" portType="ns2:OrderStatus_ptt"
    inputVariable="orderStatusRequest" partnerLink="OrderStatus"
    operation="update"/>
    </sequence>
    </scope>
    <scope name="NotifyCustomer">
    <bpelx:annotation>
    <bpelx:pattern patternName="bpelx:email"></bpelx:pattern>
    </bpelx:annotation>
    <variables>
    <variable name="varNotificationReq"
    messageType="ns5:EmailNotificationRequest"/>
    <variable name="varNotificationResponse"
    messageType="ns5:ArrayOfResponse"/>
    <variable name="NotificationServiceFaultVariable"
    messageType="ns5:NotificationServiceErrorMessage"/>
    </variables>
    <sequence name="Sequence_17">
    <assign name="EmailParamsAssign">
    <copy>
    <from expression="string('Default')"/>
    <to variable="varNotificationReq" part="EmailPayload"
    query="/EmailPayload/ns5:FromAccountName"/>
    </copy>
    <copy>
    <from expression="string('')"/>
    <to variable="varNotificationReq" part="EmailPayload"
    query="/EmailPayload/ns5:Bcc"/>
    </copy>
    <copy>
    <from expression="string('')"/>
    <to variable="varNotificationReq" part="EmailPayload"
    query="/EmailPayload/ns5:Cc"/>
    </copy>
    <copy>
    <from expression="string('')"/>
    <to variable="varNotificationReq" part="EmailPayload"
    query="/EmailPayload/ns5:ReplyToAddress"/>
    </copy>
    <copy>
    <from expression="string('Your order has been shipped')"/>
    <to variable="varNotificationReq" part="EmailPayload"
    query="/EmailPayload/ns5:Subject"/>
    </copy>
    <copy>
    <from expression="bpws:getVariableData('inputVariable','payload','/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:UserContact/ns4:EmailAddress')"/>
    <to variable="varNotificationReq" part="EmailPayload"
    query="/EmailPayload/ns5:To"/>
    </copy>
    <copy>
    <from expression="concat(string('Dear '), bpws:getVariableData('inputVariable','payload','/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:ShipTo/ns4:Name/ns4:First'), string('
    This is to inform you that your order number '), bpws:getVariableData('inputVariable','payload','/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:ID'), string('has been '), bpws:getVariableData('inputVariable','payload','/client:SOAOrderBookingProcessRequest/ns4:PurchaseOrder/ns4:OrderInfo/ns4:OrderStatus'), string('
    If you have a question about your order, please contact customer service or send an email to [email protected]
    Thank you for doing business with Global Company. We appreciate your business!
    Global Company Customer Service'))"/>
    <to variable="varNotificationReq" part="EmailPayload"
    query="/EmailPayload/ns5:Content/ns5:ContentBody"/>
    </copy>
    <copy>
    <from expression="string('text/html; charset=UTF-8')"/>
    <to variable="varNotificationReq" part="EmailPayload"
    query="/EmailPayload/ns5:Content/ns5:MimeType"/>
    </copy>
    </assign>
    <invoke name="InvokeNotificationService"
    portType="ns5:NotificationService"
    inputVariable="varNotificationReq"
    outputVariable="varNotificationResponse"
    operation="sendEmailNotification"
    partnerLink="NotificationService"/>
    </sequence>
    </scope>
    <invoke name="callbackClient" partnerLink="client"
    portType="client:SOAOrderBookingCallback" operation="onResult"
    inputVariable="outputVariable"/>
    </sequence>
    </process>
    I think there is some err in invoking ns5: NotificationService
    Plzzzz help me to resolve this issue...
    Thanks,
    Indhu

    Thx. Now there is no errors in compiling that SOAOrderBooking BPEL process(there is some warnings), but iam getting deployment errors:
    Compiling bpel process SOAOrderBooking, revision 1.0
    [bpelc] unknown wsdl extension.
    [bpelc] In WSDL at "http://localhost:8888/esb/wsil/Fulfillment/OrderFulfillment?wsdl", extension element "{http://www.oracle.com/esb/}binding" is not known. Ignore this element.
    [bpelc] Please make sure the spelling of the element is correct and the WSDL import is complete.
    [bpelc]
    [bpelc] validating "I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\bpel\SOAOrderBooking.bpel" ...
    [bpelc] BPEL suitcase generated in: I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\output\bpel_SOAOrderBooking_1.0.jar
    [bpelc] Warning: BPEL validation has warnings.
    [bpelc] The following warnings were reported during validation:
    [bpelc]
    [bpelc] [Warning ORABPEL-10041]: Trying to assign incompatible types
    [bpelc] [Description]: in line 130 of "I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\bpel\SOAOrderBooking.bpel", <from> value type "{http://www.w3.org/2001/XMLSchema}string" is not compatible with <to> value type "{http://xmlns.oracle.com/pcbpel/adapter/db/top/OrderStatus}ordid anonymous type".
    [bpelc] [Potential fix]: Please make sure that the return value of from-spec query is compatible with the to-spec query.
    [bpelc]
    [bpelc] [Warning ORABPEL-10041]: Trying to assign incompatible types
    [bpelc] [Description]: in line 141 of "I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\bpel\SOAOrderBooking.bpel", <from> value type "{http://www.w3.org/2001/XMLSchema}string" is not compatible with <to> value type "{http://xmlns.oracle.com/pcbpel/adapter/db/top/OrderStatus}comments anonymous type".
    [bpelc] [Potential fix]: Please make sure that the return value of from-spec query is compatible with the to-spec query.
    [bpelc]
    [bpelc] [Warning ORABPEL-10041]: Trying to assign incompatible types
    [bpelc] [Description]: in line 187 of "I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\bpel\SOAOrderBooking.bpel", <from> value type "{http://www.w3.org/2001/XMLSchema}decimal" is not compatible with <to> value type "{http://www.w3.org/2001/XMLSchema}string".
    [bpelc] [Potential fix]: Please make sure that the return value of from-spec query is compatible with the to-spec query.
    [bpelc]
    [bpelc] [Warning ORABPEL-10041]: Trying to assign incompatible types
    [bpelc] [Description]: in line 375 of "I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\bpel\SOAOrderBooking.bpel", <from> value type "{http://www.w3.org/2001/XMLSchema}string" is not compatible with <to> value type "{http://www.w3.org/2001/XMLSchema}decimal".
    [bpelc] [Potential fix]: Please make sure that the return value of from-spec query is compatible with the to-spec query.
    [bpelc]
    [bpelc] [Warning ORABPEL-10041]: Trying to assign incompatible types
    [bpelc] [Description]: in line 391 of "I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\bpel\SOAOrderBooking.bpel", <from> value type "{http://www.w3.org/2001/XMLSchema}string" is not compatible with <to> value type "{http://www.w3.org/2001/XMLSchema}decimal".
    [bpelc] [Potential fix]: Please make sure that the return value of from-spec query is compatible with the to-spec query.
    [bpelc]
    [bpelc] [Warning ORABPEL-10041]: Trying to assign incompatible types
    [bpelc] [Description]: in line 438 of "I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\bpel\SOAOrderBooking.bpel", <from> value type "{http://www.w3.org/2001/XMLSchema}string" is not compatible with <to> value type "{http://xmlns.oracle.com/pcbpel/adapter/db/top/OrderStatus}ordid anonymous type".
    [bpelc] [Potential fix]: Please make sure that the return value of from-spec query is compatible with the to-spec query.
    [bpelc]
    [bpelc]
    [bpelc]
    deployProcess:
    [echo]
    | Deploying bpel process SOAOrderBooking on localhost, port 8888
    [deployProcess] Deploying process I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\output\bpel_SOAOrderBooking_1.0.jar
    BUILD FAILED
    I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\build.xml:87: Authentication failed for user "oc4jadmin" on host "localhost"
    Total time: 7 seconds
    I think the above deployment err were bcoz of compilation warnings:
    Warning(130):
    [Error ORABPEL-10041]: Trying to assign incompatible types
    [Description]: in line 130 of "I:\downloads\courselabs\labs\SOAEssentials\SOAOrderBooking\bpel\SOAOrderBooking.bpel", <from> value type "{http://www.w3.org/2001/XMLSchema}string" is not compatible with <to> value type "{http://xmlns.oracle.com/pcbpel/adapter/db/top/OrderStatus}ordid anonymous type".
    [Potential fix]: Please make sure that the return value of from-spec query is compatible with the to-spec query.
    plz come up with suggestions to resolve this issue...
    Thanks,
    Indhu

  • BPEL process crashes randomly

    Iam working on softwareproject based on JAVA Web Services, deployed on a AXIS server, which are orchestrated in a BPEL process. The BPEL process was created with JDeveloper and deployed on the Oracle BPEL PM 10.1.3.1.0.
    The main WMYPC BPEL process invokes several other BPEL processes, which represent functionality of lower layers. The lower BPEL processes invoke again lower BPEL processes. So there exist three layers of BPEL process.
    Each BPEL process was tested and worked correctly, but when the main BPEL process is called, which involves the other BPEL processes, the main process crashs randomly on different stages of progress, after a lower process is getting invoked with the following error message:
    Your test request was processed synchronously. It took 83.464seconds to finish and generated the following output:
    Value:      
    <Faulthttp://schemas.xmlsoap.org/soap/envelope/>
    <faultcode>env:Server</faultcode>
    <faultstring>java.lang.IllegalStateException: Cannot call setRollbackOnly() current thread is NOT associated with a transaction</faultstring>
    </Fault>
    Beside the error above, a second error occures sometimes.
    Your test request was processed synchronously. It took 64.891seconds to finish and generated the following output:
    Value:      
    <Faulthttp://schemas.xmlsoap.org/soap/envelope/>
    <faultcode>env:Server</faultcode>
    <faultstring>com.oracle.bpel.client.delivery.ReceiveTimeOutException: Waiting for response has timed out. The conversation id is 70976ad86304fa5b:-18ed62ca:111af3d9f30:-7ff0. Please check the process instance for detail.</faultstring>
    </Fault>
    The development enviroment runs on a virtual machine running MS Windows Server 2003 SP1 with performance problems. So i thought there is a timeout problem and changed the syncMaxWaitTime for the BPEL domain to 120, but i didnt saw any improvements.
    I guess its a PM configuration problem and hope somebody can help me to solve it.
    Thanks for your help in advance.
    Regards Ronbee
    Message was edited by:
    ronbee

    Hi Ronbee,
    I guess you are using VMWare for Windows 2003 Server.
    If that's the case , then its an obvious performance issue.
    Cheers
    Anirudh Pucha

  • Generating the wsdl with inline schema for the bpel process

    Hi
    When a BPEL process is deployed, we can get the WSDL of the same by logging into the BPEL console, but the WSDL contains the reference to the schema using the namespace. Can we generate the wsdl with the inline schema.
    Suggestions are highly appreciated.
    Thanks

    Hi,
    If the wsdl is referring to a Schema file you won't be able to see the schema definition in the WSDL file itself,for that you have to refer to the deployed jar which contains the XML schema.The default path for the deployed jar is <Oracle_SOA_Installed_Home>/bpel/domains/<domain_name>/tmp/<bpelprocess.jar>
    Otherwise if you have the source project you can always refer to it in JDev.
    Rgrds.

Maybe you are looking for