Creating a dynamic variable in bpel process

hi
I have a requirement i.e. how to create a dynamic variable in bpel process?
Help me out with this....thanks.

Open your bpel and look for and icon that looks like this... (x)
http://docs.oracle.com/cd/E23943_01/dev.1111/e10224/bp_gsbpel.htm#CIADACJJ

Similar Messages

  • How to create a local variable in bpel?

    Hi,
    In my bpel flow I need to call service based upon a pl/sql procedure multiple times. The procedure returns the results of a query in chunks and contains a boolean as an output parameter that tells me whether there are any more records that need to be fetched based upon which I will be calling the service again. I want to achieve this using a while loop. So for the while loop condition I am thinking of creating a local variable in the bpel process and assign it an initial value of false(). Then once the service is called I will set the value of this variable to the output boolean parameter returned by the procedure. So while the boolean is true the service will be called again.
    My question is how can I create a local variable in bpel and assign it an initial value of false. Or is there any other way that this can be achieved?
    Thanks!!

    Hello! thanks for yr response.
    I tried creating a new variable by defining a scope. But in the create variable window I cannot define a standalone variable of boolean type I need to pick up the type from an lov that brings up a list of all existing variable! so basically u are just mapping to an existing variable which in my case will not work because I will need to map to one of the elements of the output of the pl/sql procedure based service -- also this element itself is not exposed in the lov only the name "inputParameters" is displayed as the element --all the contents are not exposed.
    Any suggestions?
    Thanks!

  • Generating dynamic Attachments between bpel process activities

    Dear Experts,
    Please suggest me that how to handle dynamic attachments in BPEL process with JDeveloper.
    The requirement was need to send an attachment between activities in same BPEL process
    and not sending an attachment through mail.
    For Instance consider a scenario "Need to issue an appointment order(Activity3) for the candidate if he successfully completed his assigned task(Activity1) and selected(Activity2)".
    Thanks ,
    Rajesh
    Edited by: Rajesh A on Mar 9, 2009 11:30 AM

    Hi Rajesh,
    That's a nice requirement without using the Notification services to send the attachments.
    However, this can be achieved using the workflow service tasks as mentioned in : http://download-uk.oracle.com/docs/cd/B31017_01/integrate.1013/b28981/workflow.htm#BABCAIEF
    Using this you can assign, play with attachments via tasks. Hope this helps to some extent!
    Regards
    Anirudh Pucha

  • Error implementing dynamic callback from BPEL process

    Hi,
    I am trying to use dynamic callback from a BPEL process..
    Created a variable of type EndpointReference by importing the ws-addressing.xsd. in the partnerlink wsdl..
    I assigned the URL to the variable's address field ...
    <copy>
    <from expression="'http://172.31.171.123:8888/PubSubWLPOC-CallbackSvc2-context-root/EIPWFServiceCallbackPort'"/>
    <to variable="ep_var" query="/ns3:EndpointReference/ns3:Address"/>
    </copy>
    Gives no error till now...
    But when I try to assign the same variable to the partnerlink, I get an error..
    <assign name="Assign_7">
    <copy>
    <from variable="ep_var"/>
    <to partnerLink="MyWebService1"/>
    </copy>
    </assign>
    The error is like this(from the $SOA_HOME\bpel\domains\default\logs) :-
    java.lang.NullPointerException
    at com.collaxa.cube.engine.types.bpel.CXPartnerLink.copy(CXPartnerLink.java:246)
    at com.collaxa.cube.engine.ext.wmp.BPELAssignWMP.performCopyTo(BPELAssignWMP.java:1151)
    at com.collaxa.cube.engine.ext.wmp.BPELAssignWMP.__executeStatements(BPELAssignWMP.java:215)
    at com.collaxa.cube.engine.ext.wmp.BPELActivityWMP.perform(BPELActivityWMP.java:199)
    at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:3698)
    at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1655)
    at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75)
    at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:217)
    at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:314)
    at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:5765)
    at com.collaxa.cube.engine.CubeEngine.callbackPerformer(CubeEngine.java:1885)
    at com.collaxa.cube.engine.delivery.DeliveryHelper.callbackPerformer(DeliveryHelper.java:845)
    at com.collaxa.cube.engine.delivery.DeliveryService.handleCallback(DeliveryService.java:794)
    at com.collaxa.cube.engine.ejb.impl.CubeDeliveryBean.handleCallback(CubeDeliveryBean.java:378)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    The confusing part is when I use xml fragment instead of the variable ep_var, it works fine ...
    But I cannot use the same as the callback can be made to any url(which is decided on runtime)
    Can someone pls help me with this ?
    saptarishi

    Hi,
    I have done following for dynamic call back and it works..
    <copy>
    <from>
    <_EndpointReference xmlns="http://schemas.xmlsoap.org/ws/2003/03/addressing">
    <Address/>
    </EndpointReference>
    </from>
    <to variable="EndpointUrl"/>
    </copy>
    <copy>
    In the above assignment from part is an xml fragment assigned to Endpoint Url
    <copy>
    <from expression="'http://172.31.171.123:8888/PubSubWLPOC-CallbackSvc2-context-root/EIPWFServiceCallbackPort'"/>
    <to variable="ep_var" query="/ns3:EndpointReference/ns3:Address"/>
    </copy>
    </copy>
    <copy>
    <from variable="EndpointUrl"/>
    <to partnerLink="SFDC_plt"/>
    </copy>

  • Creating simple Business Rules in BPEL process

    Hi,
    I have an environment consisting of SOA Suite 11g running on Weblogic Server. I'm using JDeveloper 11g for development.
    Scenario
    I have a BPEL process which starts off by polling a DB table and I then assign the input to a Recieve activity's InputVariable. I have a 'Number' column which will contain a number between 1 and 3. I then require Business Rules (BR) to be set up which read this value, and based on the number, assign a 'Name' string (which is to be the output variable from the business rules) to be used later on in BPEL process.
    Problem - I have followed the basic tutorials available in order to set up the business rules, but am getting numerous errors. Firstly, I sometimes find that my input/output variables created during setup of BR component and the XSD based on this, does not have XML Faces automatically created for it (therefore have to create it myself by clicking on the + button and doing this for each element of XSD). When I do get this working, I then double-click on my Business Rules activity in my BPEL process, only to find that the input/output variables here no longer are assignable to my BR input/output variables as I get the following error "Exception: Problem Building Schema!".
    I am not sure why this is, but suspect that my XSD (which is very simple anyway) or the setup steps I follow to define the link to my XSD, are wrong.
    I have taken the following steps so far:
    1. Create empty BPEL process
    2. Set up polling adapter to poll DB table
    3. Create Receive activity and assigned polled input to created variable
    4. Add Business Rules component to composite and set up and create dictionary here. Also set up inputs/outputs to be in form of my XSD elements.
    5. Add Business Rules component to my BPEL process and configure this to include input/output variables (*This is where error occurs*)
    6. Go back to .rules component in composite to define rule and define rule
    Upon deployment, I get many errors most of which pertain to "Unresolved XML element... make sure XML element +xxxxx+ is defined in one of WSDL's that are referenced by the deployment descriptor."
    I have only imported a simple XSD containing two elements to this project. The other XSD is the one of my polling adapter. I've not created any input/output variables for the overall BPEL process as didn't think I was required to.
    Can you please help in getting this process doing the simple activities described at the top.
    I appreciate your help.
    Edited by: user10248308 on 10-Mar-2010 11:49

    Hi,
    Create a project with BPEL composite
    Now drag a business rule
    Now create input variable of type ur requestelement
    and output variable of type response element
    Now in rules designer page take decision table
    and then craete a condition (inputelement.input > 1000) and in the rule select true
    now create another rule select false
    Npw create an action with assertion and select the parameterized box there
    now in designer page for first rule assign some value (say 500) and for second rule some value(100)
    Now in bpel u have to assign a value to input var of BR
    Deploy the process
    If u supply 10000 u will get 500
    if u supply 100 u will get 100
    In the same way u can do by using If-Then
    You can use facts and bucketsets according to ur requirement
    Regards
    PavanKumar.M
    PavanKumar.M

  • Error creating web service proxy for bpel process in jdev 10.1.3

    Hi,
    I am trying to create a web service proxy in Jdeveloper 10.1.3, and get the following error:
    Element type "fault" is missing required attribute "name"
    I have created a fault on one of the operations, and in the .wsdl file there is a name attribute:
    <operation name="process">
    <fault name="TestError" message="client:TestErrorMessage"/>
    </operation>
    The fault definition in the .wsdl obtained from the process when you access it over http is somewhat different:
    <fault>
    <soap:fault name="TestError" use="literal" encodingStyle="" />
    </fault>
    Any ideas how to workaround this problem?
    Toby

    Hi Susan,
    The WSDL generated by BPEL designer is :
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions name="EncryptedPasswordTest"
    targetNamespace="http://xmlns.oracle.com/EncryptedPasswordTest"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:client="http://xmlns.oracle.com/EncryptedPasswordTest"
    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/">
         <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         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 attributeFormDefault="qualified"
                   elementFormDefault="qualified"
                   targetNamespace="http://xmlns.oracle.com/EncryptedPasswordTest"
                   xmlns="http://www.w3.org/2001/XMLSchema">
                   <element name="EncryptedPasswordTestProcessRequest">
                        <complexType>
                             <sequence>
                                  <element name="username" type="string"/>
                             </sequence>
                        </complexType>
                   </element>
                   <element name="EncryptedPasswordTestProcessResponse">
                        <complexType>
                             <sequence>
                                  <element name="password" type="string"/>
                             </sequence>
                        </complexType>
                   </element>
                   <element name="EncryptedPasswordTestProcessError">
                        <complexType>
                             <sequence>
                                  <element name="code" type="string"/>
                                  <element name="description" type="string"/>
                             </sequence>
                        </complexType>
                   </element>
              </schema>
         </types>
         <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         MESSAGE TYPE DEFINITION - Definition of the message types used as
         part of the port type defintions
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
         <message name="EncryptedPasswordTestRequestMessage">
              <part name="payload" element="client:EncryptedPasswordTestProcessRequest"/>
         </message>
         <message name="EncryptedPasswordTestResponseMessage">
              <part name="payload" element="client:EncryptedPasswordTestProcessResponse"/>
         </message>
         <message name="EncryptedPasswordTestErrorMessage">
              <part name="payload" element="client:EncryptedPasswordTestProcessError"/>
         </message>
         <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         PORT TYPE DEFINITION - A port type groups a set of operations into
         a logical service unit.
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
         <!-- portType implemented by the EncryptedPasswordTest BPEL process -->
         <portType name="EncryptedPasswordTest">
              <operation name="process">
                   <input message="client:EncryptedPasswordTestRequestMessage" />
                   <output message="client:EncryptedPasswordTestResponseMessage"/>
    <fault name="EncryptedPasswordTestError" message="client:EncryptedPasswordTestErrorMessage"/>
              </operation>
         </portType>
         <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         PARTNER LINK TYPE DEFINITION
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
         <plnk:partnerLinkType name="EncryptedPasswordTest">
              <plnk:role name="EncryptedPasswordTestProvider">
                   <plnk:portType name="client:EncryptedPasswordTest"/>
              </plnk:role>
         </plnk:partnerLinkType>
    </definitions>
    And the WSDL produced when you access the ws endpoint is:
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions
    name="EncryptedPasswordTest"
    targetNamespace="http://xmlns.oracle.com/EncryptedPasswordTest"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:tns="http://xmlns.oracle.com/EncryptedPasswordTest"
    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:client="http://xmlns.oracle.com/EncryptedPasswordTest"
    >
    <types>
    <schema attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://xmlns.oracle.com/EncryptedPasswordTest"
    xmlns="http://www.w3.org/2001/XMLSchema">
    <element name="EncryptedPasswordTestProcessRequest">
    <complexType>
    <sequence>
    <element name="username" type="string"/>
    </sequence>
    </complexType>
    </element>
    <element name="EncryptedPasswordTestProcessResponse">
    <complexType>
    <sequence>
    <element name="password" type="string"/>
    </sequence>
    </complexType>
    </element>
    <element name="EncryptedPasswordTestProcessError">
    <complexType>
    <sequence>
    <element name="code" type="string"/>
    <element name="description" type="string"/>
    </sequence>
    </complexType>
    </element>
    </schema>
    </types>
    <message name="EncryptedPasswordTestErrorMessage">
    <part name="payload" element="tns:EncryptedPasswordTestProcessError"/>
    </message>
    <message name="EncryptedPasswordTestResponseMessage">
    <part name="payload" element="tns:EncryptedPasswordTestProcessResponse"/>
    </message>
    <message name="EncryptedPasswordTestRequestMessage">
    <part name="payload" element="tns:EncryptedPasswordTestProcessRequest"/>
    </message>
    <portType name="EncryptedPasswordTest">
    <operation name="process">
    <input message="tns:EncryptedPasswordTestRequestMessage"/>
    <output message="tns:EncryptedPasswordTestResponseMessage"/>
    <fault name="EncryptedPasswordTestError" message="tns:EncryptedPasswordTestErrorMessage"/>
    </operation>
    </portType>
    <binding name="EncryptedPasswordTestBinding" type="tns:EncryptedPasswordTest">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="process">
    <soap:operation style="document" soapAction="process"/>
    <input>
    <soap:body use="literal"/>
    </input>
    <output>
    <soap:body use="literal"/>
    </output>
    <fault>
    <soap:fault name="EncryptedPasswordTestError" use="literal" encodingStyle=""/>
    </fault>
    </operation>
    </binding>
    <service name="EncryptedPasswordTest">
    <port name="EncryptedPasswordTestPort" binding="tns:EncryptedPasswordTestBinding">
    <soap:address location="http://bpel5.lon.domroot.com:7779/orabpel/default/EncryptedPasswordTest/1.0"/>
    </port>
    </service>
    <plnk:partnerLinkType name="EncryptedPasswordTest">
    <plnk:role name="EncryptedPasswordTestProvider">
    <plnk:portType name="tns:EncryptedPasswordTest"/>
    </plnk:role>
    </plnk:partnerLinkType>
    </definitions>

  • Can we define 'Static Variables' in BPEL process ?

    Is the idea of 'STATIC VARIABLES' supported in Oracle BPEL?
    What I mean by that is, I need all my in-flight BPEL process INSTANCES to read a common variable and then decide the next course of action.
    Is this possible?
    Thanks in advance,
    Mahendra

    Hi Hans,
    In Cocoa and Objective-C a static variable needs to be declared in the implementation file and not the header as you would normally do. Standard C variables can be set at the same time as the declaration but Cocoa objects need an extra step.
    For example:
    #import "TestObject.h"
    // declare your static variable here
    static NSArray *count;
    @implementation TestObject
    - (id) init {
    self = [super init];
    if (self != nil) {
    // set the variable here
    // the 'if' statement ensures it is only set once
    if (!count) {
    count = [[NSArray arrayWithObjects:@"One",@"Two",@"Three",Nil] retain];
    return self;
    @end
    Hope this helps,
    Martin.
    PowerMac G5 1.6Ghz   Mac OS X (10.4.9)   4 gig RAM & NVidia 6800 Ultra

  • How to assign a parent or child process to BPEL process Dynamically

    Hi friends,
    root_id (varchar) - the conversation id of the instance at the top of the invocation tree. Suppose A -> B -> C, root( B ) = A, root( C ) = A, parent( B )= A, parent( C ) = B. This instance, instance at the top of the tree will not have this set. There will be relation between ROOT_ID, PARENT_ID and CIKEY in the cube_ instance at dehydration data base.
    Here I want to assign root_id or parent_id dynamically to my bpel process dynamically. Let me know if anybody knows about that.
    Thanks in advance...
    Hari Mandadapu

    Hi,
    I'm more puzzled as to why you would want to do this? As you have explained these columns provide details of the process tree. Why would you want to alter the values set by BPEL there by changing the process tree it created?

  • Creating dynamic variable names

    I know there has got to a way to do this but I am not finding anything on google. I want to create a dynamic variable name like name + i so when your in a loop the names come out name1, name2 and so on till however many you want. I have tried
    int name + i = 3;
    int name[i] = 3; // which obviously won't but I had to try
    int name{i} = 3;and I am out of ideas. Thanks for all your help.

    I'd suggest using variables named j or x when posting code which uses them as array indexes.
    [i] - is for italics formatting
    [u] - is for underlined formatting
    [code] is for class Example { ... } code formatting
    etc.

  • BPEL Process in BPM Studio

    Hello,
    First, are there any examples, tutorials, or documentation on how to create and run a BPEL process within BPM Studio (5.7) ?
    I've gotten quite a ways by trial and error, but am having trouble running / testing out the process.
    I've tried doing a Process->Generate Process Interface and Process->Run but nothing happens in BPM Studio when these are performed. What else do i need to do to test out my BPEL process with external webservice ?
    Here's the steps i've taken so far.
    1. Developed a simple external webservice with netbeans (JAX-WS).
    2. Generated WSDL and XSD with wsgen executable.
    3. Developed WSDL & XSD for BPEL Process request & reply.
    4. Created a new project within BPM Studio.
    5. Created a new module under "Catalog" for wsdl introspection.
    6. Cataloged webservice component with local wsdl/xsd files.
    7. Configured the Server configuration generated under the "External Resources" to point to the webservice host.
    8. Configured the web service under "External Resources" to point to the webservice endpoint on the host (Server configuration)
    9. Created a new BPEL Process.
    10. Created new Instance variables for the process input and output as "component" type that point to the introspected request & response types.
    11. Assigned the port type & method of the BPEL Receive to the introspected service defined in #3.
    12. Assinged the input variable to the request variable created in #10.
    13. Assigned port type & method & output variable to the BPEL reply.
    14. Created a BPEL Invoke node between Request & Reply.
    15. Assigned port type & method on the Invoke node to instrospected web service defined in #2.
    16. Created instance variables for input & output of invoke node based on introspected request & reply
    17. Assigned input & output.
    Once all of this was complete, doing a Process->Check Design yeilded no errors or warnings.
    Thanks for any help,
    Chris

    Hello,
    First, are there any examples, tutorials, or documentation on how to create and run a BPEL process within BPM Studio (5.7) ?
    I've gotten quite a ways by trial and error, but am having trouble running / testing out the process.
    I've tried doing a Process->Generate Process Interface and Process->Run but nothing happens in BPM Studio when these are performed. What else do i need to do to test out my BPEL process with external webservice ?
    Here's the steps i've taken so far.
    1. Developed a simple external webservice with netbeans (JAX-WS).
    2. Generated WSDL and XSD with wsgen executable.
    3. Developed WSDL & XSD for BPEL Process request & reply.
    4. Created a new project within BPM Studio.
    5. Created a new module under "Catalog" for wsdl introspection.
    6. Cataloged webservice component with local wsdl/xsd files.
    7. Configured the Server configuration generated under the "External Resources" to point to the webservice host.
    8. Configured the web service under "External Resources" to point to the webservice endpoint on the host (Server configuration)
    9. Created a new BPEL Process.
    10. Created new Instance variables for the process input and output as "component" type that point to the introspected request & response types.
    11. Assigned the port type & method of the BPEL Receive to the introspected service defined in #3.
    12. Assinged the input variable to the request variable created in #10.
    13. Assigned port type & method & output variable to the BPEL reply.
    14. Created a BPEL Invoke node between Request & Reply.
    15. Assigned port type & method on the Invoke node to instrospected web service defined in #2.
    16. Created instance variables for input & output of invoke node based on introspected request & reply
    17. Assigned input & output.
    Once all of this was complete, doing a Process->Check Design yeilded no errors or warnings.
    Thanks for any help,
    Chris

  • Problems in invoking BPEL process

    Hi there,
    I created with JDeveloper the following BPEL process :
    <?xml version = "1.0" encoding = "UTF-8" ?>
    <process name="ProvaBPEL" targetNamespace="http://xmlns.oracle.com/ProvaBPEL"
    xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20"
    xmlns:ns1="http://www.research.ibm.com/wsla"
    xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap"
    xmlns:bpelx="http://schemas.oracle.com/bpel/extension"
    xmlns:client="http://xmlns.oracle.com/ProvaBPEL"
    xmlns:ora="http://schemas.oracle.com/xpath/extension"
    xmlns:orcl="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc">
    <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:ProvaBPEL"
    myRole="ProvaBPELProvider"/>
    </partnerLinks>
    <variables>
    <!-- Reference to the message passed as input during initiation -->
    <variable name="inputVariable"
    messageType="client:ProvaBPELRequestMessage"/>
    <!-- Reference to the message that will be returned to the requester-->
    <variable name="outputVariable"
    messageType="client:ProvaBPELResponseMessage"/>
    </variables>
    <sequence name="main">
    <!-- Receive input from requestor. (Note: This maps to operation defined in ProvaBPEL.wsdl) -->
    <receive name="receiveInput" partnerLink="client"
    portType="client:ProvaBPEL" operation="process"
    variable="inputVariable" createInstance="yes"/>
    <!-- Generate reply to synchronous request -->
    <assign name="Assign_1">
    <copy>
    <from variable="inputVariable" part="payload"/>
    <to variable="outputVariable" part="payload"/>
    </copy>
    </assign>
    <reply name="replyOutput" partnerLink="client" portType="client:ProvaBPEL"
    operation="process" variable="outputVariable"/>
    </sequence>
    </process>
    which gets as input a WSLA type (http://www.research.ibm.com/wsla) and returns it as output without performing any operation (just a copy operation).
    I have deployed the process and it can be accessed at http://localhost/8888/orabpel/default/ProvaBPEL/1.0. I can see it in the BPEL Console but (first problem) I can't test it because I can't see the usual HTML form the BPEL console shows. I can't see the origine xml form too. If I go to the BPEL endpoint I see the following error message:
    Cannot test this Operation using the Test Page because Could not understand type: {http://www.research.ibm.com/wsla}StringList
    The wsdl of the deployed BPEL Process is:
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions name="ProvaBPEL"
    targetNamespace="http://xmlns.oracle.com/ProvaBPEL"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:client="http://xmlns.oracle.com/ProvaBPEL"
    xmlns:ns1="http://www.research.ibm.com/wsla"
    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/">
         <types>
              <schema xmlns="http://www.w3.org/2001/XMLSchema">
                   <import namespace="http://www.research.ibm.com/wsla" schemaLocation="WSLA093.xsd" />
              </schema>
         </types>
         <message name="ProvaBPELRequestMessage">
              <part name="payload" element="ns1:SLA" />
         </message>
         <message name="ProvaBPELResponseMessage">
              <part name="payload" element="ns1:SLA" />
         </message>
         <!-- portType implemented by the ProvaBPEL BPEL process -->
         <portType name="ProvaBPEL">
              <operation name="process">
                   <input message="client:ProvaBPELRequestMessage" />
                   <output message="client:ProvaBPELResponseMessage"/>
              </operation>
         </portType>
         <plnk:partnerLinkType name="ProvaBPEL">
              <plnk:role name="ProvaBPELProvider">
                   <plnk:portType name="client:ProvaBPEL"/>
              </plnk:role>
         </plnk:partnerLinkType>
    </definitions>
    I used Apache XMLBeans to bind the WSLA types to Java types creating a WSLA.jar that I import in the following client I have developed:
    import com.ibm.research.wsla.*;
    import java.io.File;
    import java.net.URL;
    import javax.xml.soap.*;
    import org.w3c.dom.Document;
    import org.w3c.dom.Node;
    public class SOAPClient {
    public static void main(String[] args) {
    SOAPConnectionFactory fact;
    try {  
    fact = SOAPConnectionFactory.newInstance();
    SOAPConnection con = fact.createConnection();
    MessageFactory mfact = MessageFactory.newInstance();
    SOAPMessage smsg = mfact.createMessage();
    SOAPPart prt = smsg.getSOAPPart();
    SOAPEnvelope env = prt.getEnvelope();
    SOAPBody bdy = env.getBody();
    File xmlfile = new File("C:\\prova.xml");
    SLADocument sladoc = SLADocument.Factory.parse(xmlfile);
    Node nd = sladoc.getDomNode();
    bdy.addDocument((Document) nd);
    System.out.println("SOAP Message:");
    smsg.writeTo(System.out);
    System.out.println();
    System.out.println();
    //Set the WebService end point URL
    URL endpoint = new URL("http://dana:8888/orabpel/default/ProvaBPEL/1.0");
    //Send the message
    SOAPMessage response;
    response = con.call(smsg, endpoint);
    System.out.println("Received SOAP Message:");
    response.writeTo(System.out);
    System.out.println();
    //Close the connection
    con.close();
    catch (Exception e) {
    e.printStackTrace();
    The client simply parses an XML file and uses it as bosy of the SOAP message.
    JDeveloper compiles it without errors but when I run the project (second problem) I get the following as SOAP response:
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><env:Header/><env:Body><env:Fault xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"><faultcode>env:Server</faultcode><faultstring>java.lang.NullPointerException</faultstring><faultactor></faultactor></env:Fault></env:Body></env:Envelope>
    and I can't see any instance of the BPEL Process in the BPEL Console. I'm quite sure the SOAP message is well formed because I can see it in the Running output. I also tried with simpler BPEL process for which I can see the HTML form in the BPEL Console and copying and pasting the SOAP message generated with my client in the Origine XML form the Process was invoked correctly.
    Can anybody help me? Thanks in advance.

    Great! Thank you for the reply! Now I manage to invocate the BPEL process. I put the line:
    smsg.getMimeHeaders().addHeader("SOAPAction", "process");
    and now my day is a good day!
    However I tried to place the import of the WSLA093.xsd schema outside the types element with:
    <import namespace="http://www.research.ibm.com/wsla" location="WSLA093.xsd" />
    but it didn't work. Now the wsdl file of the BPEL Process is:
    <?xml version="1.0" encoding="UTF-8"?>
    <definitions name="ProvaBPEL"
    targetNamespace="http://xmlns.oracle.com/ProvaBPEL"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:client="http://xmlns.oracle.com/ProvaBPEL"
    xmlns:ns1="http://www.research.ibm.com/wsla"
    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/">
    <import namespace="http://www.research.ibm.com/wsla" location="WSLA093.xsd" />
    <types>
              <schema xmlns="http://www.w3.org/2001/XMLSchema">
    <import namespace="http://www.research.ibm.com/wsla" schemaLocation="WSLA093.xsd" />
              </schema>
         </types>
         <message name="ProvaBPELRequestMessage">
              <part name="payload" element="ns1:SLA" />
         </message>
         <message name="ProvaBPELResponseMessage">
              <part name="payload" element="ns1:SLA" />
         </message>
         <!-- portType implemented by the ProvaBPEL BPEL process -->
         <portType name="ProvaBPEL">
              <operation name="process">
                   <input message="client:ProvaBPELRequestMessage" />
                   <output message="client:ProvaBPELResponseMessage"/>
              </operation>
         </portType>
         <plnk:partnerLinkType name="ProvaBPEL">
              <plnk:role name="ProvaBPELProvider">
                   <plnk:portType name="client:ProvaBPEL"/>
              </plnk:role>
         </plnk:partnerLinkType>
    </definitions>
    Please tell me if it is correct. I also tried to delete the line:
    <import namespace="http://www.research.ibm.com/wsla" schemaLocation="WSLA093.xsd" />
    from the types element (even if I don't know if it is correct) but I always have the same error in the BPEL endpoint page:
    Cannot test this Operation using the Test Page because Could not understand type: {http://www.research.ibm.com/wsla}StringList
    Thank you very muche for the help.

  • Connection Refused while invoking Web Service from BPEL process

    Hie
    I am getting the following error when I try to invoke a web service (created in JDeveloper) from a BPEL process.
    <remoteFault xmlns="http://schemas.oracle.com/bpel/extension">
    <part name="code">
    <code>Server.userException</code>
    </part>
    <part name="summary">
    <summary>when invoking endpointAddress '.......................', java.net.ConnectException: Connection refused: connect</summary>
    </part>
    <part name="detail">
    <detail>AxisFault faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode: faultString: java.net.ConnectException: Connection refused: connect faultActor: faultNode: faultDetail: {http://xml.apache.org/axis/}stackTrace:java.net.ConnectException: Connection refused:
    Did anyone come across a similar problem...??? Plz help:(

    Hi everybody,
    I have the same problem. I developed a sample bpel process and tried to access it form another one, but still having the same exception :
    <remoteFault>
    <part name="code" >
    <code>Server.userException</code>
    </part>
    <part name="summary" >
    <summary>when invoking endpointAddress 'http://set.by.caller', java.net.UnknownHostException: set.by.caller</summary>
    </part>
    <part name="detail" >.......
    Thanks for your help!
    miroo

  • [Workaround] Calling BPEL process from jspx causes DCA-40012 error on AS

    Hi!
    I've created a DataControl for my BPEL process in my application (ADF BC 10.1.3.3).
    I've created command button on my jspx page that has ActionListener binded to a backing bean method that calls commit and than my BPEL process through the bindings.
    The process consists of reading some DB data, creating XML message and saving it to disk.
    If I run my application from JDeveloper, everything is working fine, the file is written to desired folder. But after I deploy my application to AS 10.1.3.3 and try to call the same process, it doesn't get executed. I see this error in log files:
    Exception:
    oracle.adf.model.adapter.AdapterException: DCA-40012: Failed to create a connection to the Web Service.
         at oracle.adfinternal.model.adapter.webservice.WSDefinition.loadFromMetadata(WSDefinition.java:659)
         at oracle.adf.model.adapter.DataControlFactoryImpl.createSession(DataControlFactoryImpl.java:163)
         at oracle.adf.model.binding.DCDataControlReference.getDataControl(DCDataControlReference.java:76)
         at oracle.adf.model.BindingContext.get(BindingContext.java:457)
         at oracle.adf.model.BindingContext.findDataControl(BindingContext.java:308)
         at oracle.jbo.uicli.binding.JUCtrlActionBinding.getDataControl(JUCtrlActionBinding.java:489)
         at oracle.jbo.uicli.binding.JUCtrlActionBinding.invoke(JUCtrlActionBinding.java:625)
         at oracle.adf.controller.v2.lifecycle.PageLifecycleImpl.executeEvent(PageLifecycleImpl.java:378)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:146)
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding._execute(FacesCtrlActionBinding.java:128)
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlActionBinding.execute(FacesCtrlActionBinding.java:105)
         at myClass.myMethod(MyClass.java:1220)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:146)
         at oracle.adf.view.faces.component.UIXComponentBase.__broadcast(UIXComponentBase.java:1087)
         at oracle.adf.view.faces.component.UIXCommand.broadcast(UIXCommand.java:204)
         at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:287)
         at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:401)
         at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:95)
         at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
         at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:228)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:197)
         at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:123)
         at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:103)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:162)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
         at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
         at com.evermind.server.http.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)
    I read about bug 5878326 and tried applying the patch Patch for 6404865(Base bug 5878326) in my JDeveloper (on my local machine, not on AS, since there is no JDev on the server).
    But this patch doesn't solve my problems. Is there another patch for this or this behavior isn't the same as in bug 5878326?
    Thanks, BB.

    Hi BB,
    It's Phil again.
    Thanks for the follow up, especially you aren't working on this subject any more. This is indeed a bug in 10.1.3.3, but not on 10.1.3.1 Application Server. Embedded OC4J server in JDeveloper 10.1.3.3 doesn't produce this error at all. Patch for 5878326 does NOT solve this issue.
    However, I have found a walk-around for this issue. Most if it has already being documented.
    Oracle recommend two options to access a Web Service, by creating a Web Service Data Control or a Web Service Proxy.
    See more info: http://www.oracle.com/technology/products/jdev/howtos/1013/wsadf/adfcomplexwstypes.html?_template=/ocom/print
    Both approaches work on JDeveloper 10.1.3.3, but the prior option will fail on App Server 10.1.3.3 due to the bug being discussed in this thread.
    For the time being, we can opt for the second option. A quick example is provided below.
    - Construct a Web Service Proxy by right-click on chosen project, select New ... | Business Tier -> Web Services | Web Service Proxy, provide WSDL URL and complete the wizard. a Web Service Proxy is generated for you at (your package).proxy under Application Sources folder.
    - Select this proxy, switch to Struture view, you will see a list of classes contained in the proxy. Look for a class with name (Web Service Name)Client.java. In my case, it is called __soap_getCustomerDB_getCustomerDB_pttClient.java. This class is of particular interest to you, as it provides an interface to invoke Web Service calls, in this case, getCustomerDBSelect_id(GetCustomerDBSelect_id id).
    - Now create a new class, which you may extend from the example class below.
    /********************** CODE BEGIN *********************************/
    package oracle.srdemo.datamodel;
    import java.rmi.RemoteException;
    import oracle.srdemo.datamodel.proxy.__soap_getCustomerDB_getCustomerDB_pttClient;
    import oracle.srdemo.datamodel.proxy.types.com.oracle.xmlns.pcbpel.adapter.db.top.getcustomerdb.GetCustomerDBSelect_id;
    import oracle.srdemo.datamodel.proxy.types.com.oracle.xmlns.pcbpel.adapter.db.top.getcustomerdb.CustomerCollection;
    public class WsCustomer {
    __soap_getCustomerDB_getCustomerDB_pttClient myPort = null;
    public WsCustomer() {
    try {
    myPort = new __soap_getCustomerDB_getCustomerDB_pttClient();
    } catch (Exception e) {
    e.printStackTrace();
    * @param customerId
    * @return
    public CustomerCollection getCustomer(int customerId) throws RemoteException {
    GetCustomerDBSelect_id id = new GetCustomerDBSelect_id();
    id.setId(String.valueOf(customerId));
    return myPort.getCustomerDBSelect_id(id);
    /********************** CODE FINISH *********************************/
    - Save the class, rebuild the project.
    - Right-click on this class and select 'Create Data Control'. You should find a new Data Control named (Your Class Name)DataControl is generated on Data Control Palette.
    - You can drag-and-drop available methods from the data control onto you jspx page, rebuild and test it on embedded OC4J Server.
    - Deploy the ear or war file on App Server.
    Hope this helps.
    Regards,
    Phil

  • Dynamic properties in a process

    Hi everyone,
    I am trying to find a solution to create some dynamic properties in my process.
    JPD are good but too many things are hard-coded and changing them needs the project
    to be recompiled :(
    My aim is to remove most of the hardcoded values and let the administrator set
    them later at the deployment time.
    Do you have any idea if it is possible to add custom dynamic properties that could
    be edited in the same way as the service broker control ?
    Moreover some of the process settings are in the javadoc (such as the delay for
    a timer path, the amount of retry for an exception etc..)
    Is there any solution to set them at the runtime ?
    Thanks for any help/idea you could provide,
    Mael

    You can get the task infromation by calling the task control method TeskInfo getTaskInfo()
    "raja v" <[email protected]> wrote:
    >
    Iam using WebLogic8.1 Integration BPM feature. I've designed a Worklist
    based application.
    In the business process, i've to call a java class method from the business
    process
    which takes the process instance and task related properties (viz. the
    task id,
    task name, the current actor etc.). How could i supply these values from
    within
    a business process.
    Regards
    Raja V.

  • Dynamic variable and/or XML LazyLoader HELP

    I am loading images via xml lazyloader into my air app
    I need var b to be "img" +  item.id dynamically
    any ideas???
    for each (var item : LoadingItem in lazy.items)
                        var b : Bitmap = lazy.getBitmap(item.id);
                        addChild(b);
    If you dont know the lazyloader code then can you please explain how to create a dynamic variable for a bitmap???

    so i should set type here
    var img:bitmap = {}
    then create the variable like this in my for statement?
    img[this[item.id]] = lazy.getBitmap(item.id);
    lets say item was 1,2,3
    Then
    img[1]
    img[2]
    img[3]
    would be able to hold a different bitmap
    thanks in advanced

Maybe you are looking for

  • Problem in module pool with table control scrolling

    hi, i am using the table control in module pool,in the table control i have radion button for all the rows. After i got the data into the table control ,if i select radio button and if i press vertical scroll bar button, that radio button is deselect

  • Custom Digital Signature Preference Edits

    I have created some custom digital signatures using existing certificates and unique graphics. I have a question about being able to edit what appears to be "canned" reason statements available in the "Configure Signature Appearance" location in Sign

  • Mail easy scenario ...

    Hi. I'm trying to do a simple mail scenario. I receive a file and i only want to send the two fields that came in that file (name and surname). I've defined a Data type with those to fields. Then, the message type and the message interface (one outbo

  • Camera not working when plugged into certain USB ports

    I just purchased a Creative Live! Cam for use on my dual G5 running 10.5. When I plug the camera into the USB port on the front of the Mac, it works fine with iChat. However, when I plug it into the back of the monitor (older style Cinema display), i

  • Themes for curve 9300

    helloo all, am searching for themes for my curve 9300 , i have already google it so many times but no result , please help with this ...