About map a bpel process to web service?

hi:
Which activity in bpel should be exposed as a service to invoker?I always think they are receive and onMessage.But,in oracle PM,it looks not so.In oracle PM a asyn process exposed two services,one init the instance(begin receive),one is calback.To my understanding,the callback service should implement by invoker,why not so?
thanks

Thanks for the quick reply.Actually the web service is already deployed on the server.What I want to do is use existing wsdl file of the deployed web service and invoke the method of the same using oracle PM.
If I remove element which uses apachesoap:Map type it just works fine also I am getting the complex object returned by the web service method.But when I try to set appDataDef which is of type apachesoap:Map(Axis conversion for java.util.Map and it uses namespace xmlns:apachesoap="http://xml.apache.org/xml-soap") I am getting the error.
Can you give me some direction to use this exising wsdl file to set map object or it is not possible.

Similar Messages

  • BPEL process as web service data control

    Hi,
    I am trying to invoke a synchronous BPEL process from a jspx page. I have configured my BPEL process as web service data control object and
    dropped it on my jspx as a button. But after dropping it as a button i observe that it is expecting three parameters.
    I have attached the .xsd file used in the BPEL process and the screen shot of the parameter window of JDEV.
    Here if you can see, i have a heirarchy of data. I have customerType which has orderType , which further has lineType.
    Can somebody help me , how do i provide data to this process i.e in the parameter fields., so that it is in accordance with my .xsd of the BPEL process.
    -thanks,
    lavanya.
    <schema xmlns="http://www.w3.org/2001/XMLSchema"
    targetNamespace="http://www.globalcompany.com/ns/sales"
    xmlns:po="http://www.globalcompany.com/ns/sales"
    elementFormDefault="qualified">
    <element name="Orders" type="po:OrderType"/>
    <element name="OrchestrationCustomers" type="po:OrchestrationCustomersType"/>
    <complexType name="CustomerType">
    <sequence>
    <element name="CustomerName" type="string"/>
    <element name="Location" type="string"/>
    </sequence>
    </complexType>
    <complexType name="LineItemType">
    <sequence>
    <element name="ProductName" type="string"/>
    <element name="itemType" type="string"/>
    <element name="price" type="decimal"/>
    <element name="Quantity" type="decimal"/>
    </sequence>
    </complexType>
    <complexType name="OrderType">
    <sequence>
    <element name="Customer" type="po:CustomerType" minOccurs="0" maxOccurs="unbounded"/>
    <element name="LineItem" type="po:LineItemType" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
    </complexType>
    <complexType name="OrchestrationCustomersType">
    <sequence>
    <element name="CustomerNumber" type="int"/>
    <element name="CustomerName" type="string"/>
    <element name="OrderHeader" type="po:OrderHeaderType" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
    </complexType>
    <complexType name="OrderHeaderType">
    <sequence>
    <element name="CustomerNumber" type="int"/>
    <element name="HeaderId" type="int"/>
    <element name="OrderNumber" type="string"/>
    <element name="OrderStatus" type="string"/>
    <element name="OrchestrationLineItem" type="po:OrchestrationLineItemType" minOccurs="0" maxOccurs="unbounded"/>
    </sequence>
    </complexType>
    <complexType name="OrchestrationLineItemType">
    <sequence>
    <element name="HeaderId" type="int"/>
    <element name="LineNumber" type="int"/>
    <element name="LineId" type="int"/>
    <element name="ItemName" type="string"/>
    <element name="price" type="decimal"/>
    <element name="Quantity" type="decimal"/>
    <element name="LineStatus" type="string"/>
    </sequence>
    </complexType>
    </schema>

    Every BPEL process is an another web service. Go and grep WSDL of the BPEL process and call it.

  • Call bpel process as Web service from database

    Hi!
    i'm trying tocall bpel process as web service from Oracle database. When i try the same pl sql function, i can successfully call regular j2ee web service without any problem. When i instantiate process from bpel console - everything is ok .. but when i call process from plsql function, i get this error:
    ORA-20000: soapenv:Server.generalException - Missing BPEL archive file.
    The process domain cannot locate the BPEL archive for process
    &quot;AuthorizeKeyCode&quot;, revision &quot;AuthorizeKeyCode&quot;.
    If you have deployed the process please check that it is located in the
    directory &quot;/ora/bpelpm/integration/orabpel/domains/vinves/deploy&quot;.
    ; nested exception is:
    ORABPEL-05205
    Missing BPEL archive file.
    The process domain cannot locate the BPEL archive for process
    &quot;AuthorizeKeyCode&quot;, revision &quot;AuthorizeKeyCode&quot;.
    If you have deployed the process please check that it is located in the
    directory &quot;/ora/bpelpm/integration/orabpel/domains/vinves/deploy&quot;.
    i tried undeploy and deploy the process again, i tried to restart the server - still the same problem...
    anyone can help, please?
    thanks ...
    Tomas

    Hi,
    I am trying to invoke the HelloWorld BPEL process from Oracle DB using the demo_soap package downloaded from oracle.com.
    Find the PL/SQL block below:
    DECLARE
    req Demo_Soap.request;
    resp Demo_Soap.response;
         zipcode VARCHAR2(100) := 'Suresh';
    BEGIN
    req := Demo_Soap.new_request('initiate',
    'xmlns="http://xmlns.oracle.com/HelloWorld"');
    Demo_Soap.add_parameter(req, 'HelloWorldProcessRequest', 'xsd:string', zipcode);
    resp := Demo_Soap.invoke(req,
    'http://nooslux037t.gl.2wglobal.com:7777/BPELConsole/Dev/displayProcess.jsp?processId=HelloWorld',
    'http://xmlns.oracle.com/HelloWorld');
    END;
    Please help me in knowing what value i should pass for the
    1. New_request procedure
    2. Add_parameter procedure
    3. Invoke procedure.
    The HelloWorld is same as the example in the BPEL Tutorial Session 1.
    Thanks for your time.

  • Passing complex object from bpel process to web service

    I have deployed my web service on apache axis.The wsdl file looks like as follows,
    <?xml version="1.0" encoding="UTF-8" ?>
    - <wsdl:definitions targetNamespace="http://bpel.jmetro.actiontech.com" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://bpel.jmetro.actiontech.com" xmlns:intf="http://bpel.jmetro.actiontech.com" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    - <wsdl:types>
    - <schema targetNamespace="http://bpel.jmetro.actiontech.com" xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
    - <complexType name="ADLevelBpelWS">
    - <sequence>
    <element name="adLevelStr" nillable="true" type="xsd:string" />
    <element name="id" type="xsd:int" />
    </sequence>
    </complexType>
    - <complexType name="TransResultWS">
    - <sequence>
    <element name="description" nillable="true" type="xsd:string" />
    <element name="id" type="xsd:long" />
    <element name="responseType" type="xsd:int" />
    <element name="status" type="xsd:boolean" />
    </sequence>
    </complexType>
    - <complexType name="NamespaceDataImplBpelWS">
    - <sequence>
    <element name="ADLevel" nillable="true" type="impl:ADLevelBpelWS" />
    <element name="appdataDef" nillable="true" type="apachesoap:Map" />
    <element name="description" nillable="true" type="xsd:string" />
    <element name="name" nillable="true" type="xsd:string" />
    </sequence>
    </complexType>
    - <complexType name="CreateSharedNamespaceBpelWS">
    - <sequence>
    <element name="actor" nillable="true" type="xsd:string" />
    <element name="comment" nillable="true" type="xsd:string" />
    <element name="from" nillable="true" type="xsd:string" />
    <element name="namespaceData" nillable="true" type="impl:NamespaceDataImplBpelWS" />
    <element name="priority" type="xsd:int" />
    <element name="processAtTime" nillable="true" type="xsd:dateTime" />
    <element name="replyTo" nillable="true" type="xsd:string" />
    <element name="responseRequired" type="xsd:boolean" />
    </sequence>
    </complexType>
    </schema>
    - <schema targetNamespace="http://xml.apache.org/xml-soap" xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
    - <complexType name="mapItem">
    - <sequence>
    <element name="key" nillable="true" type="xsd:string" />
    <element name="value" nillable="true" type="xsd:string" />
    </sequence>
    </complexType>
    - <complexType name="Map">
    - <sequence>
    <element maxOccurs="unbounded" minOccurs="0" name="item" type="apachesoap:mapItem" />
    </sequence>
    </complexType>
    </schema>
    </wsdl:types>
    + <wsdl:message name="createNamespaceRequest">
    <wsdl:part name="createNs" type="impl:CreateSharedNamespaceBpelWS" />
    </wsdl:message>
    - <wsdl:message name="createNamespaceResponse">
    <wsdl:part name="createNamespaceReturn" type="impl:TransResultWS" />
    </wsdl:message>
    - <wsdl:portType name="JMetroWebService">
    - <wsdl:operation name="createNamespace" parameterOrder="createNs">
    <wsdl:input message="impl:createNamespaceRequest" name="createNamespaceRequest" />
    <wsdl:output message="impl:createNamespaceResponse" name="createNamespaceResponse" />
    </wsdl:operation>
    </wsdl:portType>
    - <wsdl:binding name="NAMESPACEWITHMAPSoapBinding" type="impl:JMetroWebService">
    <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
    - <wsdl:operation name="createNamespace">
    <wsdlsoap:operation soapAction="" />
    - <wsdl:input name="createNamespaceRequest">
    <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://bpel.jmetro.actiontech.com" use="encoded" />
    </wsdl:input>
    - <wsdl:output name="createNamespaceResponse">
    <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://bpel.jmetro.actiontech.com" use="encoded" />
    </wsdl:output>
    </wsdl:operation>
    </wsdl:binding>
    - <wsdl:service name="JMetroWebServiceService">
    - <wsdl:port binding="impl:NAMESPACEWITHMAPSoapBinding" name="NAMESPACEWITHMAP">
    <wsdlsoap:address location="http://localhost:7001/axis/services/NAMESPACEWITHMAP" />
    </wsdl:port>
    </wsdl:service>
    </wsdl:definitions>
    My NamespaceDataObjectImplBpelWS object contains element appDataDef which is of type java.util.Map.My bpel wsdl file is as below,
    <?xml version="1.0"?>
    <definitions name="NsWithMap"
    targetNamespace="http://bpel.jmetro.actiontech.com"
    xmlns:tns="http://bpel.jmetro.actiontech.com"
    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:apachesoap="http://xml.apache.org/xml-soap"
    >
    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    TYPE DEFINITION - List of services participating in this BPEL process
    The default output of the BPEL designer uses strings as input and
    output to the BPEL Process. But you can define or import any XML
    Schema type and us them as part of the message types.
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    <types>
         <schema targetNamespace="http://bpel.jmetro.actiontech.com" xmlns="http://www.w3.org/2001/XMLSchema">
         <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
              <element name="createNamespace" type="tns:CreateSharedNamespaceBpelWS"/>
              <element name="transResult" type="tns:TransResultWS"/>
              <complexType name="TransResultWS">
                   <sequence>
                        <element name="description" type="string" />
                        <element name="id" type="long" />
                        <element name="responseType" type="int" />
                        <element name="status" type="boolean" />
              </sequence>
              </complexType>
              <complexType name="ADLevelBpelWS">
                   <sequence>
                        <element name="adLevelStr" type="string" />
                        <element name="id" type="int" />
                   </sequence>
              </complexType>
              <complexType name="NamespaceDataImplBpelWS">
                   <sequence>
                        <element name="ADLevel" type="tns:ADLevelBpelWS" />
                        <element name="description" type="string" />
                        <element name="name" type="string" />
                        <element name="appdataDef" type="apachesoap:Map" />
                   </sequence>
              </complexType>
              <complexType name="CreateSharedNamespaceBpelWS">
                   <sequence>
                        <element name="namespaceData" type="tns:NamespaceDataImplBpelWS" />
              </sequence>
              </complexType>
         <element name="desc" type="string"/>
         </schema>
         <schema targetNamespace="http://xml.apache.org/xml-soap" xmlns="http://www.w3.org/2001/XMLSchema">
                   <import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
                        <complexType name="mapItem">
                             <sequence>
                                  <element name="key" type="string" />
                                  <element name="value" type="string" />
                        </sequence>
                        </complexType>
                        <complexType name="Map">
                             <sequence>
                             <element maxOccurs="unbounded" minOccurs="0" name="item" type="apachesoap:mapItem" />
                             </sequence>
                        </complexType>
              </schema>
    </types>
    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    MESSAGE TYPE DEFINITION - Definition of the message types used as
    part of the port type defintions
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    <message name="NsWithMapRequestMessage">
    <part name="payload" element="tns:createNamespace"/>
    </message>
    <message name="NsWithMapResponseMessage">
    <part name="payload" element="tns:transResult"/>
    </message>
    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    PORT TYPE DEFINITION - A port type groups a set of operations into
    a logical service unit.
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    <!-- portType implemented by the NsWithMap BPEL process -->
    <portType name="NsWithMap">
    <operation name="initiate">
    <input message="tns:NsWithMapRequestMessage"/>
    </operation>
    </portType>
    <!-- portType implemented by the requester of NsWithMap BPEL process
    for asynchronous callback purposes
    -->
    <portType name="NsWithMapCallback">
    <operation name="onResult">
    <input message="tns:NsWithMapResponseMessage"/>
    </operation>
    </portType>
    <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    PARTNER LINK TYPE DEFINITION
    the NsWithMap partnerLinkType binds the provider and
    requester portType into an asynchronous conversation.
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
    <plnk:partnerLinkType name="NsWithMap">
    <plnk:role name="NsWithMapProvider">
    <plnk:portType name="tns:NsWithMap"/>
    </plnk:role>
    <plnk:role name="NsWithMapRequester">
    <plnk:portType name="tns:NsWithMapCallback"/>
    </plnk:role>
    </plnk:partnerLinkType>
    </definitions>
    I am trying to set this map data using java code ,
         HashMap procADMap1 = new HashMap(5);
                   PropertyTypeWS pType = new PropertyTypeWS();
                   pType.setTypeIndex(2);     
              AppdataDefImplWS appData1 = new AppdataDefImplWS();
              appData1.setName("Project");
              appData1.setType(pType);
              appData1.setMaxSize(400);
              appData1.setLOB(false);
         appData1.setDefaultValue("Project Default value");
              procADMap1.put(appData1.getName(), appData1);
              setVariableData("request","createNs","/createNs/namespaceData/appdataDef",procADMap1);     
    Then I am passing request object to the method which I want to invoke from bpel process.
    I am able to deploy the application but when I do post message I am getting following exception,
    NamespaceWithMap (createNamespace) (faulted)
    [2004/09/09 18:35:54] "{http://schemas.oracle.com/bpel/extension}bindingFault" has been thrown. Less
    faultName: {{http://schemas.oracle.com/bpel/extension}bindingFault}
    messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage}
    code: {Server.userException}
    summary: {org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize.}
    detail: {null}
    Is there any other way to handle Map type in bpel process?
    Thanks in advance,
    Sanjay

    Thanks for the quick reply.Actually the web service is already deployed on the server.What I want to do is use existing wsdl file of the deployed web service and invoke the method of the same using oracle PM.
    If I remove element which uses apachesoap:Map type it just works fine also I am getting the complex object returned by the web service method.But when I try to set appDataDef which is of type apachesoap:Map(Axis conversion for java.util.Map and it uses namespace xmlns:apachesoap="http://xml.apache.org/xml-soap") I am getting the error.
    Can you give me some direction to use this exising wsdl file to set map object or it is not possible.

  • Unique rollback in a BPEL process using web services

    We are a cellular communication company using Oracle DB (10g) and Oracle Forms to run our business applications (customer care and the like). We have planned a system migration using the SOA approach with the latest release of Oracle BPEL Suite (business logic), Oracle ADF BC (presentation level), Oracle OAS (application server) and JDeveloper (application development IDE).
    Within our current applications we have processes that perform several tasks (inserts, updates and/or deletes on the same DB) as part of one atomic DB transaction. Using the SOA approach we&rsquo;ve deemed those tasks as being &lsquo;services&rsquo; that we, let&rsquo;s say for the sake of argument, could implement either as web services (so as to be published for reuse) or as stored procedures encapsulated via DB adapters (BPEL lexicon).
    Our biggest challenge, and hence our question to the SOA world, is how to attain that same unique transaction. We understand that there is no one perfect approach, for the &lsquo;solution&rsquo; depends on too many factors and choices; what we&rsquo;d like to know are past experiences people had or, at best, what do people consider what the best practices in the industry are regarding this matter.
    <strong><u>Approach A:</u></strong> all services are implemented as DB adapters (stored procedures and the like).
    <strong><u>PROS</u><u>:</u></strong> one single DB rollback should any service fail to execute properly and so undo all changes made so far.
    <u><strong>CONS:</strong></u> highly coupled, non-visible components (via UDDI); impossibility to manage, control and audit (via WS Manager) components; weak/poor SOA Governance.
    <u><strong>Approach B:</strong></u> all services are implemented as web services.
    <u><strong>PROS:</strong></u> loosely coupled, self-contained, and web accessible visible components (via UDDI) besides the ease to manage, control and audit (via WS Manager); strong SOA Governance.
    <u><strong>CONS:</strong></u> since each web service is a &lsquo;different&rsquo; transaction with its own &lsquo;commit&rsquo;, a unique rollback transaction for the whole process will not be possible should a WS fail, for previous WSs will have already committed their data changes before doing the rollback.
    <u><strong>Approach C:</strong></u> services implemented as a mix of web services and DB Adapters.
    <strong><u>PROS:</u></strong> those of Approach B for web services.
    <strong><u>CONS:</u></strong> those of Approach A (DB adapters) + those of Approach B (web services).
    <hr />
    So, the 64,000 dollar question is how to attain a single transaction when you have web services as part of your process? Do we need to &rsquo;build/create&rsquo; a schema/functionality similar to the &lsquo;DB-undo-segment&rsquo; in order to obtain a single rollback transaction for the whole process or does the BPEL COMPENSATE delivers this functionality somehow?
    Are we not seeing the obvious? Are we not seeing the forest because we&rsquo;re looking at a tree? Please keep in mind that we are using Oracle BPEL.
    Thanks a bunch,
    --Sergio                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

    Hi Marinus,
    you are absolutely right and not missing anything. OWSM does not free you from taking additional measures to block direct interaction with the unsecure WebService from not "authorized" clients. You must restrict the http response to the OWSM host only (either in the Apache or the OC4J configuration). See the related documentation.
    --olaf                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Error when calling BPEL process from web service client

    I have created three projects here ,there're no problem when testing Composite Application(SynchronousSampleApplication) by test case inside this project.
    When I create a Java Application(SynchronousSampleApp),inside this project I've created a web service client from file WSDL of BPEL. After that, In Main class, I call an operation from web service client.But have the following error:
    Jul 17, 2008 4:48:22 PM synchronoussampleapp.Main main
    SEVERE: null
    java.rmi.RemoteException: HTTP transport error: java.net.MalformedURLException: For input string: "${HttpDefaultPort}"; nested exception is:
    HTTP transport error: java.net.MalformedURLException: For input string: "${HttpDefaultPort}"
    at SynSample.SynchronuosSamplePortType_Stub.synchronuosSampleOperation(SynchronuosSamplePortType_Stub.java:83)
    at synchronoussampleapp.Main.main(Main.java:24)
    Caused by: HTTP transport error: java.net.MalformedURLException: For input string: "${HttpDefaultPort}"
    at com.sun.xml.rpc.client.http.HttpClientTransport.invoke(HttpClientTransport.java:140)
    at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:96)
    at SynSample.SynchronuosSamplePortType_Stub.synchronuosSampleOperation(SynchronuosSamplePortType_Stub.java:67)
    ... 1 more
    Please help me soon. Thanks very much!

    Can't anyone help me? I'm using Netbean 6.1 and Glassfish server.
    Do I need any additional plugin?

  • Issue: BPEL invoking Axis web service

    Hi
    We are calling a Axis web service from BPEL.. The web service has been defined to be a request only 1 way service. The axis service takes around 3-5 minutes to complete the job( data insertion in DB).. But seems like when BPEL invokes the web service; BPEL thread is waiting (thread is not released) and the BPEL process does not move forward until the web service completes the job....
    Any pointers on how the deal with the issue will be helpful!!
    Thanks

    Hi Lovenish,
    Goto console-> select domain> Configuration->JTA
    Check timeout seconds.
    2. i don't know what kind of partner link you are invoking.
    check composite.xml, is there any property like retry.interval .
    3. ◦SyncMaxWaitTime: The maximum time a request and response operation takes before timing out.
    The maximum time a request/response operation will take before it times out. The default value is 45 seconds.
    Regards,
    Padmanabham

  • BPEL Process showing as service in SOA 11g version

    Hi All,
    Morning...need some help with this as we are currently stuck with this.
    In the SOA Suite 10g version (10.1.3.3) when we deployed a parent bpel process making a call to another bpel process ( child process ) via the partner link (by mentioning the complete WSDL location/url for the deployed child process in the partner link). When we see the flow/audit trail for such a bpel process in the BPEL Console it shows the separate flow diagrams of the bpel instances for the parent as well child process..
    Now when we have migrated such a bpel process to SOA Suite 11g (J developer : 11.1.1.4) by opening up the project file ( .jpr ) for both the processes in Jdev 11g version and going through the migration steps in the wizard. It finally says migration to version 11.1.1.4 is successful
    Now we deploy the child process successfully to the server --> Then compile/build the parent process --> deploy this parent as well.
    1.Now when we see the composite.xml for the parent process in Design view it shows the child bpel process partner link in the External References section.
    2.In the front end we invoke the parent process , it completes successfully ..we could see the flow diagram for this parent process..
    But for the child bpel process we don't see a new separate instance created in the front end in the EM console
    Could someone please let us know how this could be achieved so that we could see a separate bpel instance for the child bpel process as well..what settings/properties could be changed..
    We need to see separate instances for the parent as well child bpel process within the BPEL Console.
    With regards

    Hi Todd,
    first of all thanks for your response..i am putting below what exactly is happening.
    1. We trigger the parent process..
    Go to SOA Composite for parent process --> Dashboard --> Recent Instances ---
    there it shows the composite instance id lets say 123 for parent process..
    We click the hyperlink for this instance id --> it opens up the Flow Trace screen -- on the right side it mentions the ECID value. this is correct ...
    Now below it shows the Trace section. here in tabular format it shows below columns :
    Usage Instance Type Composite Instance
    Service parent process name (hyperlinked) BPEL Component composite instance # 123
    Reference child process name web service(local invocation) composite instance # 456
    Now if we need to see the flow trace for the parent process we click the hyperlink just mentioned above and it opens up the flow trace page showing the bpel process instance details for parent process.
    On the top right side it shows the BPEL id for this parent process. this is fine...
    Now if we need to see the same flow details for the child bpel process..how do we see this in the frontend.
    In the older version of SOA 10g Bpel Console 10.1.3.3 we used to see these 2 bpel processes separately in the BPEL Console under the BPEL processes tab & there we could see the instances for the child process with complete flow trace/audit details
    This is the problem we are facing now..hope it is clear now.
    Thanks

  • Exposing a process as web service on Oracle BPM 11g

    Hi!
    Does somebody know how can I expose a process as a web service on Oracle BPM 11g? How does it works?
    In the version 10.3, when we exposed a process as web service it always had 3 default methods: startSession, getInstanceStatus and discardSession, is it the same in the 11g version?
    Where can I found some info about it? Any tutorial?
    Thanks a lot!
    Ana

    Typically you would use a Message Start event to start the process in conjunction with a Message End event. This will allow your process to be called as an asynchronous web service.
    In the "Implementation" section for the start event, you specify the input parameters. You can specify "Define Interface" to directly define the interface, or use an existing interface from the BPM Catalog (the From Catalog option).
    For further details on the different event types and their use cases, refer to the modeling and implementation guide:
    http://download.oracle.com/docs/cd/E14571_01/doc.1111/e15176/toc.htm
    You can test the web service and examine the WSDL and endpoints by using FMW control (Enterprise Manager). In the menu on the left hand side: expand SOA -> SOA-Infra -> <Partition Name> -> Composite Name, then click the "Test" button at the top.

  • Mapping input values for a web service connection to a range of cells

    I've created a web service connection in Xcelsius data manager. My web service requires an array of integer as input parameter. How do I map input values for a web service connection to read from a range of cells in the spreadsheet, e.g. $A$2:$A$20, in similar way of mapping output values to write to a range of cells in the spreadsheet?
    For output values of the web service, I can specify to map the output values to write to a range of cells. However, it doesn't seem to work for reading the input values.
    I can map input values for each node to a single cell, e.g. $A$2, in the spreadsheet. However, when I set the "Read From" field to a range of cells, e.g. $A$2:$A$20, it only reads in the first value in the range.
    Is there any way that we can do this mapping for input values as we do for output values?
    Your assistance is very much appreciated.
    Regards,
    Van

    Van,
    There is a workaround for that...
    Example:
    My Webservice accepts input data range in a specific format with " :" symbol, i.e. 072008:082008
    Now what i do is
    A1 = 072008
    A2 = 082008
    A3 = CONCATENATE(A1,":",A2)
    so A3 = 072008:082008
    Now i map the input value in web service to cell A3
    P.S have 2 input box components and map it to cells A1 and A2, i.e you are giving users an  option to enter the range of values...then web service will capture the range and refreshes data with the range of values user entered.
    hope this helps..
    -Anil

  • How to start a process via web service with automatically run first screen

    Hi guys,
    we want to start the process via web service and skip the inbox presentation of the first human activity of the process. It means that the first activity should start automatically by clicking the link (wsdl link).
    Is there any opportunity to realize this thought?
    THX
    Regrads
    Phil

    Hi Phil,
    You may refer to my blog series for steop by step procedure on how to initiate a BPM workflow through webservice. Below are the links:
    /people/arafat.farooqui/blog/2009/08/13/introduction-to-sap-netweaver-bpm-part-4
    /people/arafat.farooqui/blog/2010/06/23/introduction-to-sap-netweaver-bpm-part-5
    Hope this helps!!
    Regards,
    Arafat

  • Complex object as parameter from BPEL PM to Web Service

    Hello,
    I'm having a problem with being able to invoke a method on my web service from BPEL PM. It's a 'create' method, so I'm sending a complex object as the input parameter of the method.
    I'm encountering the same kind of problems I have at different stages in the project I'm on: SOA works really well as long as you don't use complex objects. As soon as you do, SimpleDeserializer exceptions seem to be thrown all over the place. In this case, the error I'm getting is:
    <remoteFault xmlns="http://schemas.oracle.com/bpel/extension">
    <part name="code">
    <code>Server.userException</code>
    </part>
    <part name="summary">
    <summary>when invoking endpointAddress 'http://covarm.tvu.ac.uk/validationEvent/services/validationEventSOAP', org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize.</summary>
    </part>
    <part name="detail">
    <detail>AxisFault faultCode: {http://xml.apache.org/axis/}Server.userException faultSubcode: faultString: org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize. faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXException: SimpleDeserializer encountered a child element, which is NOT expected, in something it was trying to deserialize. at org.apache.axis.encoding.ser.SimpleDeserializer.onStartChild(SimpleDeserializer.java:188) at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:893) at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:200) at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:684) at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:207) at org.apache.axis.message.RPCElement.getParams(RPCElement.java:265) at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:190) at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:276) at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:156) at org.apache.axis.SimpleChain.invoke(SimpleChain.java:126) at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:437) at org.apache.axis.server.AxisServer.invoke(AxisServer.java:316) at org.apache.axis.transport.http.AxisServlet.doPost(AxisServlet.java:701) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at org.apache.axis.transport.http.AxisServletBase.service(AxisServletBase.java:335) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:744) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:674) at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:866) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Unknown Source)</detail>
    </part>
    </remoteFault>
    The WSDL is at:
    http://covarm.tvu.ac.uk/validationEvent/wsdl/validationEventSOAP.wsdl
    I'm invoking the 'createEvent' method. I know the service works okay because I've tested it with Rational Software Architect and Eclipse's Web Services Explorer, and also with standalone code and JUnit tests.
    The problem seems to be getting the mapping from BPEL PM to the Web Service. I'm sending the object as a message type that's defined in the WSDL of the service:
    <xsd:element name="createEventRequest" type="tns:event" />
    - <xsd:complexType name="event">
    - <xsd:sequence>
    <xsd:element name="event-detail" type="tns:event-detail" />
    <xsd:element name="proposed-dates" type="tns:proposed-dates" />
    <xsd:element name="panel" type="tns:panel" />
    <xsd:element name="development-team" type="tns:development-team" />
    <xsd:element name="minute" type="xsd:string" />
    <xsd:element name="feedback-list" type="tns:feedback-list" />
    </xsd:sequence>
    </xsd:complexType>
    Is this something that's
    a) fixable?
    b) workaroundable?
    c) a known issue?
    Thanks,
    Dan

    Before I start crying at my own impotence, how can I configure the bpel.xml file (for obtunnel_ when it looks like this?
    <?xml version = '1.0' encoding = 'UTF-8'?>
    <BPELSuitcase>
    <BPELProcess id="RunValidationEvent" src="RunValidationEvent.bpel">
    <partnerLinkBindings>
    <partnerLinkBinding name="client">
    <property name="wsdlLocation">RunValidationEvent.wsdl</property>
    </partnerLinkBinding>
    <partnerLinkBinding name="validationEvent">
    <property name="wsdlLocation">validationEventSOAPRef.wsdl</property>
    </partnerLinkBinding>
    <partnerLinkBinding name="notification">
    <property name="wsdlLocation">notificationSOAPRef.wsdl</property>
    </partnerLinkBinding>
    <partnerLinkBinding name="TaskManagerService">
    <property name="wsdlLocation">TaskManagerService.wsdl</property>
    <property name="wsdlRuntimeLocation">${domain_url}/TaskActionHandler/TaskManagerService.wsdl</property>
    </partnerLinkBinding>
    <partnerLinkBinding name="TaskRoutingService">
    <property name="wsdlLocation">TaskRoutingService.wsdl</property>
    <property name="wsdlRuntimeLocation">${domain_url}/TaskActionHandler/TaskRoutingService.wsdl</property>
    </partnerLinkBinding>
    <partnerLinkBinding name="TaskActionHandler">
    <property name="wsdlLocation">TaskActionHandler.wsdl</property>
    <property name="wsdlRuntimeLocation">${domain_url}/TaskActionHandler/TaskActionHandler?wsdl</property>
    </partnerLinkBinding>
    <partnerLinkBinding name="IdentityService">
    <property name="wsdlLocation">LocalIdentityService.wsdl</property>
    </partnerLinkBinding>
    <partnerLinkBinding name="processParticipant">
    <property name="wsdlLocation">processParticipantSOAPRef.wsdl</property>
    </partnerLinkBinding>
    </partnerLinkBindings>
    <activationAgents>
    <activationAgent className="oracle.tip.pc.services.hw.task.impl.TaskActivationAgent" partnerLink="TaskManagerService"/>
    </activationAgents>
    </BPELProcess>
    </BPELSuitcase>
    Or is it that I'm using local wsdl refs when I should be defining a partner likk in my web service wsdl?

  • BPM Process as Web Service

    When the BPM Process is exposed and used as a Web Service, is it possible to have the returntype other than the instanceId. Thanks!

    I have the same problem.
    I don't obtain the result after calling the method exposed.
    I created one process, it take in input:
    sum(string:add1, :string:add2)
    and I mapped in output (string:resulted).
    * I called first startsession method
    * I took the session Id and I tried to call my method sum(sessionID,add1,add2) but obtain in respose this: /Somma#Default-1.0/1/0 (I think the InstanceId).
    How can I resolve this problem?
    Do u know any solutions??
    Thanks

  • Invoking a bpm process with web services with a return value

    Hello,
    Im invoking a bpm process in my application using web services. The problem is that I want to get a responde with the process id of the created process, but not wait for the finishing of the process. Is this possible?
    thank you

    Assuming this is for Oracle BPM 11g.
    I'm a novice at this and sure others will have infinitely better ideas (have I lowered your expectations enough?), but here are two thoughts. Both of these ideas assume that your child process was invoked by an Oracle BPM parent process.
    When you expose a process as a web service and invoke it asynchronously from a parent process, there is a call back service available. I've yet to figure out exactly how to get it to work, but if you look at the "Start" event's property in the composite (it's the service) you will see the callback information in the bottom dropdown. I believe what this means is that from your child process, you can use a Service activity to invoke a service that invokes the callback service back to the parent process's Service activity.
    My other idea (you're not going to like this one) would be to to invoke the subprocess using a Message Start Event activity instead of the Service activity you're currently using. If you go this route, then you could have your parent process kick off the child subprocess using a Message Start Event activity and then immediately after this have a Message Catch Event activity. The child process could have a Message Throw Event activity immediately after its Start Message Event activity that sends a notification to the parent process. The good part about this is that I've actually gotten this to work.
    You can send argument information back to the parent process, but (sorry) I don't yet know how to capture the process id.
    Wish I could be of more help and hope this helps a little.

  • BPEL & Oracle J2EE Web Services

    I have only tested with success invocations to JAX-RPC
    web services.
    When I try to call an oracle J2EE rpc/encoded web service
    I get a runtime error:
    BPEL Fault: {http://mypackage4/ws_hola.wsdl}org.apache.wsif.soap.fault{org.apache.wsif.soap.fault.object=No Deserializer found to deserialize a 'http://mypackage4/ws_hola.wsdl:quien' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'. [java.lang.IllegalArgumentException]}
    Does anybody know why?

    Hello 2087,
    try to add support for xsi type in "bpel.xml" of your bpel process
    Example:
    <?xml version="1.0"?>
    <BPELSuitcase>
    <partnerLinkBinding name="PartnerLinkName">
    <property name="wsdlLocation">services/PartnerLinkNameWrapper.wsdl</property>
    <property name="sendXSIType">true</property>
                   </partnerLinkBinding>
    For more information see the link in this forum:
    [NOTE] Adding xsi type to SOAP messages
    ByeBye
    Andrea

Maybe you are looking for

  • Error deploying FlightList Project

    Hello: I have imported the FlightList sample application.  I can create an archive, but when I go to Deploy the project, I get the following error: TutWD_FlightList.ear -> Successfully created a temporary copy Jun 27, 2004 3:32:11 PM /userOut/deploy

  • How to go wireless with original Mac Mini

    I bought a Mac Mini when it originally came out and at the time had no reason to get Airport installed, being that it was an extra $75 or so that I didn't have at the time. I am now moving in with some friends, all PC users, who share a wireless netw

  • Query on multiprovider not showing correct data

    Hello Gurus, I have to display 3 keyfigures in my report. Each key fig comes from different data targets.So I have used a multiprovider for it. The key figs are namely 1)Actual sales value 2)forecasted value and 3)Annual target and are in one structu

  • Can I trash "Previous Systems" after Archive and Install?

    For details leading up to this question, please see my previous post entitled "Not recognizing password after OS install". Basically I want to know if I can throw out the "Previous Systems" folder that was created when I did an "Archive and Install"

  • Disk Utility "BUSTER BAR"

    Hello, I was trying to repair my hard drive by using my tiger install DVD (family pack) by restarting by holding the c down. I get this "buster bar" circle with line through it, where the apple is with the litte pin wheel spinning at the bottom. I ha