Dynamic partnerlink binding problem

I am trying to create a dynamic partnerlink as in http://www.oracle.com/technology/pub/articles/bpel_cookbook/carey.html .
When I am trying to create this with LoanService.wsdl, it works correctly for me but when I try to create it for my own service, it is showing up some errors which I fail to understand.
I have three services service1,service2,service3.
I have created another web service called CallPartnerService in which I have imported the service.wsdl to create the partnerlink. After that I am following the instructions in the cookbook to create the create the partner reference variable, copy the partnerReference variable into the Service partner link etc
However, when I run it, I get the following error on invoking the partner service.
Cannot find binding operation.
in WSDL located at "file:/D:/product/10.1.3.1/OracleAS_1/bpel/domains/default/tmp/.bpel_CallPartnerService_1.0_a8cb48601311c51027d61ee288d499df.tmp/Service.wsdl", cannot find a binding operation of "process", portType "{http://xmlns.oracle.com/}Service"
Please make sure the WSDL is valid.
Any suggestions
This is the structure of my Service.wsdl.
<?xml version="1.0" encoding="UTF-8"?>
<definitions name="Service"
targetNamespace="http://xmlns.oracle.com/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
               xmlns:tns="http://xmlns.oracle.com/"
xmlns:client="http://xmlns.oracle.com/Service"
     xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
     xmlns:wsa="http://schemas.xmlsoap.org/ws/2003/03/addressing"
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 use them as part of the message types.
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
     <types>
          <schema attributeFormDefault="qualified" elementFormDefault="qualified"
targetNamespace="http://schemas.xmlsoap.org/wsdl/"
xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://schemas.xmlsoap.org/ws/2003/03/addressing"
schemaLocation="http://CWSEOW01:8888/orabpel/xmllib/ws-addressing.xsd" />
</schema>
<schema attributeFormDefault="unqualified"
     elementFormDefault="qualified"
     targetNamespace="http://xmlns.oracle.com/Service"
     xmlns="http://www.w3.org/2001/XMLSchema">
<!--     <element name="ServiceProcessRequest" type="ServiceProcessRequestType"/>
<element name="ServiceProcessResponse" type="ServiceProcessResponseType"/> -->
     <element name="ServiceProcessRequest">
          <complexType >
               <sequence>
                    <element name="input" type="string"/>
               </sequence>
          </complexType>
     </element>
     <element name="ServiceProcessResponse">
          <complexType >
               <sequence>
                    <element name="result" 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="RelatesToHeader">
<part name="RelatesTo" element="wsa:RelatesTo" />
</message>
<message name="MessageIDHeader">
<part name="MessageID" element="wsa:MessageID" />
</message>
<message name="ReplyToHeader">
<part name="ReplyTo" element="wsa:ReplyTo" />
</message>
     <message name="ServiceRequestMessage">
          <part name="payload" element="client:ServiceProcessRequest"/>
     </message>
     <message name="ServiceResponseMessage">
          <part name="payload" element="client:ServiceProcessResponse"/>
     </message>
     <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     PORT TYPE DEFINITION - A port type groups a set of operations into
     a logical service unit.
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<portType name="Service">
          <operation name="process">
               <input message="tns:ServiceRequestMessage" />
               <output message="tns:ServiceResponseMessage"/>
          </operation>
     </portType>
<binding name="ServiceBinding" type="tns:Service">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="process">
<soap:operation soapAction="tns:process" style="document"/>
<input>
<soap:header message="tns:MessageIDHeader" part="MessageID" use="literal" />
<soap:header message="tns:ReplyToHeader" part="ReplyTo" use="literal" />
<soap:body use="literal"/>
</input>
     <output>
<soap:body use="literal"/>
     </output>
</operation>
</binding>
<!--binding name="ServiceCallbackBinding" type="client:ServiceCallback">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="onResult">
<soap:operation soapAction="onResult" style="document"/>
<input>
<soap:header message="tns:RelatesToHeader" part="RelatesTo" use="literal" required="false"/>
<soap:body use="literal"/>
</input>
</operation>
</binding-->
<service name="Service1">
<port name="ServiceCallbackPort" binding="tns:ServiceBinding">
<soap:address location="http://CWSEOW01:8888/orabpel/default/Service1"/>
</port>
</service>
<service name="Service2">
<port name="ServiceCallbackPort" binding="tns:ServiceBinding">
<soap:address location="http://CWSEOW01:8888/orabpel/default/Service2"/>
</port>
</service>
<service name="Service3">
<port name="ServiceCallbackPort" binding="tns:ServiceBinding">
<soap:address location="http://CWSEOW01:8888/orabpel/default/Service3"/>
</port>
</service>
     <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     PARTNER LINK TYPE DEFINITION
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
     <plnk:partnerLinkType name="Service">
          <plnk:role name="ServiceProvider">
               <plnk:portType name="tns:Service"/>
          </plnk:role>
     </plnk:partnerLinkType>
</definitions>

Hi Kavitha,
//Iterate to get the attributes
       Iterator itr1 = wdContext.nodeDetails().getNodeInfo().iterateAttributes();
       IWDTransparentContainer container = (IWDTransparentContainer)view.getElement("<Your Root Container>");
       while(itr1.hasNext())
       //  Input Field for each attribute
       IWDInputField input= (IWDInputField)view.createElement(IWDInputField.class,null);
       IWDAttributeInfo iWDInfo = (IWDAttributeInfo) itr1.next();
       input.bindValue("Details."+iWDInfo.getName());
       //Add to the container
       container.addChild(input);
Regards
Ayyapparaj

Similar Messages

  • Dynamic UI Binding Problem

    Hi ,
       In my application I need to generate Dynamic TextView. I am having node Details and its attribute Name of type String.
    Node >  Details              (Cardinality 0-n)
    Name  (type String Value Attribute)
    I want to generate textview dynamically for number of time as size of Node Details. I have written following code to generate TextView , but i am not getting how to bind Name attribute to Dynamically genarated TextView. Can any one plz help me writing code for binding???
    Thnx in advance.
    Kavita
    IWDTransparentContainer container =(IWDTransparentContainer)view.getElement("RootUIElementContainer");
    for(int i=0;i<wdcontext.nodeDetails().size();i++)
    IWDInputField inputfield = (IWDInputField)view.createElement(IWDInputField.class, "InputField"+i);
    // Binding ??????
    container.addChild(inputfield);

    Hi Kavitha,
    //Iterate to get the attributes
           Iterator itr1 = wdContext.nodeDetails().getNodeInfo().iterateAttributes();
           IWDTransparentContainer container = (IWDTransparentContainer)view.getElement("<Your Root Container>");
           while(itr1.hasNext())
           //  Input Field for each attribute
           IWDInputField input= (IWDInputField)view.createElement(IWDInputField.class,null);
           IWDAttributeInfo iWDInfo = (IWDAttributeInfo) itr1.next();
           input.bindValue("Details."+iWDInfo.getName());
           //Add to the container
           container.addChild(input);
    Regards
    Ayyapparaj

  • Dynamic Partnerlink with WSIF HTTP Binding

    Hi,
    I have been trying to change the endpoint location details of my HTTP Binding Partnerlink during runtime / deploy-time. AFAIK, there are two ways to do this.
    1. Deployment Descriptor : Change the "location" property in bpel.xml to point to a different location. Ideally this can be done at deployment using ant or use the Java APIs to change them during runtime. This works for partnerlinks which use a SOAP Binding, but does not work for HTTP Get/Post Bindings.
    2. Using WS-Addressing : Again this works with a SOAP WSDL, but no go with HTTP GET/POST WSDLs.
    Has anybody been able to get dynamic partnerlinks working for non SOAP Partnerlinks?
    Regards,
    DK
    Oracle SOA Suite 10.1.3.3.0
    AIA For Communications 2.0.1

    I get a collection of endpoint url and have created a single dummy WSDL and invoked in a parallel flow within a scope.
    I have created partner reference variable, input and out variable for the service within the scope.
    You can find the code snippet below.
    <bpelx:flowN name="FlowN_1"
    N="count(bpws:getVariableData('UserUpdateRoutingService_OutputVariable','payload','/ns9:UserUpdateProviderInfoCollection/ns9:UserUpdateProviderInfo'))"
    indexVariable="flowIndex">
    <sequence name="Sequence_1">
    <scope name="Scope_1">
    <variables>
    <variable name="InvokeEnterprisePingService_pingUserBySmsId_InputVariable"
    messageType="ns5:EnterprisePingServiceRequestMessage"/>
    <variable name="InvokeEnterprisePingService_pingUserBySmsId_OutputVariable"
    messageType="ns5:EnterprisePingServiceResponseMessage"/>
    <variable name="partnerReference"
    element="wsa:EndpointReference"/>
    </variables>
    <sequence name="Sequence_2">
    <assign name="ClearEndpointEnterprisePingService">
    <copy>
    <from>
    <EndpointReference xmlns="http://schemas.xmlsoap.org/ws/2003/03/addressing"
    xmlns:ns7="http://services.otn.com">
    <Address/>
    </EndpointReference>
    </from>
    <to variable="partnerReference"/>
    </copy>
    </assign>
    <assign name="SetEndpointEnterprisePingService">
    <copy>
    <from expression="bpws:getVariableData('UserUpdateRoutingService_OutputVariable','payload','/ns9:UserUpdateProviderInfoCollection/ns9:UserUpdateProviderInfo[bpws:getVariableData(&quot;flowIndex&quot;)]/ns9:enterprisepingurl') "/>
    <to variable="partnerReference"
    query="/ns7:EndpointReference/ns7:Address"/>
    </copy>
    </assign>
    <assign name="DoPartnerlinkEnterprisePingService">
    <copy>
    <from variable="partnerReference"/>
    <to partnerLink="EnterprisePingService"/>
    </copy>
    </assign>
    <assign name="AssignEnterprisePingServiceInput">
    <copy>
    <from variable="inputVariable" part="payload"
    query="/ns2:updatePersonRequest/ns2:person/ns3:userId/ns4:userIdValue"/>
    <to variable="InvokeEnterprisePingService_pingUserBySmsId_InputVariable"
    part="payload"
    query="/ns6:pingUserBySmsId/ns6:smsUserId"/>
    </copy>
    </assign>
    <invoke name="InvokeEnterprisePingService"
    partnerLink="EnterprisePingService"
    portType="ns5:EnterprisePingService"
    operation="pingUserBySmsId"
    inputVariable="InvokeEnterprisePingService_pingUserBySmsId_InputVariable"
    outputVariable="InvokeEnterprisePingService_pingUserBySmsId_OutputVariable"/>
    </sequence>
    </scope>
    </sequence>
    </bpelx:flowN>

  • Unable to get the response from dynamic partnerlink

    Hi
    I used dynamic partnerlink, in this i am able to invoke the services dynamcially but i am unable to get the response from the services which i had invoked dynamically. In my dynamic partnerlink wsdl i had included callback binding and call back service in the wsdl you can see them below
    <binding name="LoanServiceCallbackBinding" type="tns:LoanServiceCallback">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="onResult">
    <soap:operation soapAction="onResult" style="document"/>
    <input>
    <soap:header message="tns:RelatesToHeader" part="RelatesTo" use="literal" required="false"/>
    <soap:body use="literal"/>
    </input>
    </operation>
    </binding>
    <service name="LoanServiceCallbackService">
    <port name="LoanServiceCallbackPort" binding="tns:LoanServiceCallbackBinding">
    <soap:address location="http://openuri.org"/>
    </port>
    </service>
    please help me on this
    thanks
    Srikanth

    Hi, thanks for the input
    Actually My partnerLink had two messageTypes one for Input message request and the other for the Output message request and for the input message i had used the operation as initiate also for the output messsage type operation as result.For both of them binding is defined.
    With these am passing the values from myBPELl to the service which am nvoking dynamically but unable to capture the response the variables are local to myBPEL.

  • Are dynamic partnerlinks really dynamic

    I am trying to develop dynamic partnerlinks for my BPEL process. As I understand, if I want to call one out of n number of partnerlinks say service1,service2,service3 at runtime, all having the same interface, i have to know atleast the names of these n services at designtime so that i can make an entry into the wsdl file.
    Now suppose, i want to add another service (Service 4 ) with same interface , I still have to modify the wsdl file and redeploy the process.
    Is there any way by which, i dont need to modify the wsdl file/redeploy the process.
    Ideally i would like to maintain the name and url of all the services, externally to BPEL say a DB table or configuration file and based on my input to BPEL process would read from this configuration and call the partner service so that as and when the number of services grows, i dont need to redeploy the BPEL process.
    is this achievable ?
    Message was edited by:
    user564313

    I have been trying to get this to work with my processes.
    However the examples given in BPEL sample/references/Dynamic Partner link and http://www.oracle.com/technology/pub/articles/bpel_cookbook/carey.html are using a LoanService.wsdl to create the partnerlink to which they later assign the endpoint references.
    But none of the document says, how to create this LoanService.wsdl or how it is arrived at.
    I have three bpel processes service1,service2,service3 having the same input schema. So their wsdl's service1.wsdl,service2.wsdl and service3.wsdl are same except the endpoint address.
    Now I have another BPEL process CallXXService which will be calling either of the three services based on some input. My problem is how to create something similar to LoanService.wsdl which I can use to create the partnerlink.The three wsdl's for these services(service1.wsdl,service2.wsdl,service3.wsdl) are totally different in structure to the given LoanService.wsdl.
    Any idea/suggestions please ?
    anks

  • Dynamic value binding for InputTextField - Expression within an expression

    Hi,
    I have this requirement where I have to use an EL expression's output as a bean's property in the value attribute of a InputTextField. E.g.
              <h:dataTable value="#{entity.formats}" var="field">
                   <h:column>
                        <h:outputLabel value="#{field.shortDesr}"/>
                   </h:column>
                   <h:column>
                        <h:inputText value="#{*entity."+#{field.shortDesr}+*"}"/>     
                   </h:column>     
              </h:dataTable>
    The JSF page will be a generic one so the fields within a form will be dynamic and will be formed at run-time. Since the exact bean property(entity in the code above) for a particular field is not known before, it needs to be dynamicaly built
    To give more clarity. In the following snippet, i know that entity is the bean to be used but which property(XXX) the text field has to be bound is not known and needs to be assigned at run-time.
    <h:inputText value="#{entity.*XXX*"/>     
    Is this possible? Are there any direct JSF solution or work arounds for it? Appreciate your inputs.
    Thanks
    Ranjith

A: Dynamic value binding for InputTextField - Expression within an expression

Hi BaluSC,
Your solution is totally acceptable. But I was also looking for something that can make possible direct binding to the bean properties without going through a Map.
In the meantime, I worked around the problem by not using the DataTable. Instead I loop the collection and add the Form elements programatically (code given below). With this I am able to achieve the desired effect of binding directly to the bean's property. But I am hitting another problem now, On submit the form Seam throws up 'No active conversational context" error while binding the #{sdmManager.grid} attribute. Now, I am trying to figure out how to come across it.
JSF
     <h:panelGrid columns="2" binding="#{sdmManager.grid}">
</h:panelGrid>
Bean code
     public HtmlPanelGrid getGrid(){
     grid = new HtmlPanelGrid();
     List<UIComponent> children = grid.getChildren();
     Collection<FieldFormatData> formats = dataManager.getFieldFormatData();
     for(FieldFormatData format:formats){
          HtmlOutputLabel outputLabel = new HtmlOutputLabel();
          outputLabel.setValue(format.getShortDesr());
          children.add(outputLabel);
          HtmlInputText inputText = new HtmlInputText();
          inputText.setSize(10);
          inputText.setMaxlength(10);
          System.out.println("Binding ................................... " + format.getEntityField());
          inputText.setValueBinding("value", FacesContext.getCurrentInstance().getApplication().createValueBinding("#{entity."+format.getEntityField()+"}"));
          children.add(inputText);
     return grid;

Hi BaluSC,
Your solution is totally acceptable. But I was also looking for something that can make possible direct binding to the bean properties without going through a Map.
In the meantime, I worked around the problem by not using the DataTable. Instead I loop the collection and add the Form elements programatically (code given below). With this I am able to achieve the desired effect of binding directly to the bean's property. But I am hitting another problem now, On submit the form Seam throws up 'No active conversational context" error while binding the #{sdmManager.grid} attribute. Now, I am trying to figure out how to come across it.
JSF
     <h:panelGrid columns="2" binding="#{sdmManager.grid}">
</h:panelGrid>
Bean code
     public HtmlPanelGrid getGrid(){
     grid = new HtmlPanelGrid();
     List<UIComponent> children = grid.getChildren();
     Collection<FieldFormatData> formats = dataManager.getFieldFormatData();
     for(FieldFormatData format:formats){
          HtmlOutputLabel outputLabel = new HtmlOutputLabel();
          outputLabel.setValue(format.getShortDesr());
          children.add(outputLabel);
          HtmlInputText inputText = new HtmlInputText();
          inputText.setSize(10);
          inputText.setMaxlength(10);
          System.out.println("Binding ................................... " + format.getEntityField());
          inputText.setValueBinding("value", FacesContext.getCurrentInstance().getApplication().createValueBinding("#{entity."+format.getEntityField()+"}"));
          children.add(inputText);
     return grid;

  • Dynamic partnerlinks using a wrapped wsdl

    Hi all,
    My current situation is as follows:
    Im using a webservice which doesn't define partnerlinks and as a result I've created a new wsdl which wraps the original webservice. In the wrapping wsdl I've defined the missing partnerlink. In the bpel.xml I reference the wrapping wsdl and not the wrapped wsdl. The result is that I have a webservice which includes a partnerlink def. - so far everything is fine.
    The wrapping wsdl is shown below:
    <definitions
    name="CCSSecurityServiceRemote"
    targetNamespace="http://com.scandihealth.ccs.webservices.security.common/CCSSecurityServiceRemote.wsdl"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:tns="http://com.scandihealth.ccs.webservices.security.common/CCSSecurityServiceRemote.wsdl"
    xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
    xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    >
    <!-- import namespace="http://com.scandihealth.ccs.webservices.security.common/CCSSecurityServiceRemote.wsdl"
    location="CCSSecurityServiceRemote.wsdl"/ -->
    <import namespace="http://com.scandihealth.ccs.webservices.security.common/CCSSecurityServiceRemote.wsdl"
    location="http://becks:8002/ccswebservices/CCSSecurityService?wsdl"/>
    <plnk:partnerLinkType name="CCSSecurityServiceRemotePortType_PL">
    <plnk:role name="CCSSecurityServiceRemotePortType_Role">
    <plnk:portType name="tns:CCSSecurityServiceRemotePortType"/>
    </plnk:role>
    </plnk:partnerLinkType>
    </definitions>
    My problem is the location attribute which is hardcoded! I would like to be able to define it as a preference in the bpel.xml file but how can I achive that? I've been looking at dynamic partnerlink, which seemed to be the tool to solve my problem but I can get it right.
    Any clues?
    Best regards and good weekend to you all!
    Stig

    Since you also make use of the wrapper wsdl for the dynamic partnerlink..maybe this can help you :
    http://www.oracle.com/technology/pub/articles/bpel_cookbook/carey.html
    <variable name="partnerReference" element="wsa:EndpointReference"/>
    with this you're able to assign the endpoint dynamically.

  • Dynamic partnerlink example

    Hello,
    I am quite new to Oracle BPEL Process Manager. I was reading about the dynamic partnerlink and I checked the example. What I want to learn is: Do I need a separate wsdl file for the dynamic partnerlink as LoanService.wsdl in the example? If I want to make calls to public web services, do I have to write that wsdl file myself?
    When I searched the forum I found this: ' As a workaround you can try dynamic partnerlink but your partnerlinks should be defined at design time. For details please refer to sample "orabpel\samples\references\DynamicPartnerLink" '.
    Does it mean that I have to define the addresses of the web services that I might call during the execution of the process, at design time (in a separate wsdl)?
    Thank you in advance.

    Hi 55555 55555,
    I'm not sure that I understand what you mean. It is true that you need to have a WSDL file in advance. But this WSDL file is necessary mainly to be able to define the port types and the SOAP binding information. The URLs of the services that your process uses at runtime do not necessarily need to be match those that you put in the element "service" of the WSDL file. Concretely, if you look at the file "Supplier.wsdl" in:
    http://sky.fit.qut.edu.au/~dumas/ServiceInteractionPatterns/BPELCode/OneToManySendReceive-Dynamic.zip
    You will see that there are three "service" declarations:
    <service name="Supplier1">
    <port name="SupplierServiceP" binding="tns:SupplierServiceBinding">
    <soap:address location="http://localhost:9700/orabpel/default/Supplier1"/>
    </port>
    </service>
    <service name="Supplier2">
    <port name="SupplierServiceP" binding="tns:SupplierServiceBinding">
    <soap:address location="http://localhost:9700/orabpel/default/Supplier2"/>
    </port>
    </service>
    <service name="Supplier3">
    <port name="SupplierServiceP" binding="tns:SupplierServiceBinding">
    <soap:address location="http://localhost:9700/orabpel/default/Supplier3"/>
    </port>
    </service>
    These "service" elements are important, because they define the service names (i.e. "Supplier1", "Supplier2", and "Supplier3" in this example). However, the URLs that you put here ARE NOT IMPORTANT if you're doing dynamic addressing in the BPEL code. These URLs are only used by the BPEL engine if you're not doing dynamic addressing. Indeed, try replacing these lines in the WSDL file with the following ones:
    <service name="Supplier1">
    <port name="SupplierServiceP" binding="tns:SupplierServiceBinding">
    <soap:address location="http://www.dummy.com"/>
    </port>
    </service>
    <service name="Supplier2">
    <port name="SupplierServiceP" binding="tns:SupplierServiceBinding">
    <soap:address location="http://www.dummy.com"/>
    </port>
    </service>
    <service name="Supplier3">
    <port name="SupplierServiceP" binding="tns:SupplierServiceBinding">
    <soap:address location="http://www.dummy.com"/>
    </port>
    </service>
    And then try running again the process OneToManySendReceive.bpel. You will notice that it works! This is because in the process OneToManySendReceive.bpel, the addresses of the services Supplier1, Supplier2 and Supplier3 are determined by the "assign" statement between lines 74 through 83 of OneToManySendReceive.bpel. Thus, you can put "dummy" addresses in the "location" element of your WSDL file(s). Note that you do need to define the "service" and "location" elements in your WSDL file and it is important that the service names that you use in the BPEL code match the service names in the WSDL files (but the choice of these names is up to you and it doesn't matter if this is the actual name of the process that you're calling!). Importantly, the URLs that you use in the BPEL file and those that you use in the WSDL file do not need to match, and this allows you to achieve "dynamic addressing". Just try out the OneToManySendReceive.bpel process and you'll see.
    If you wish, I can send you the whole Oracle BPEL project for the OneToManySendReceive. Please contact me at my e-mail (m.dumas at qut.edu.au). And for more information about what this process does, see http://www.serviceinteraction.com
    Cheers
    Marlon Dumas

  • Dynamic context binding in web dynpro alv

    I use dynamic context binding (see code below to show and edit the ALV table.
    'DB_TABLE' is a tranparent table. It works fine.
    But now this table should be expanded with additional fields which are only known at runtime and could be different from case to case.
    How can I get these fields in the context dynamically?
      DATA:
            rootnode_info TYPE REF TO if_wd_context_node_info,
            dyn_node      TYPE REF TO if_wd_context_node,
            tablename   TYPE string.
      rootnode_info = wd_context->get_node_info( ).
      tablename = 'DB_TABLE'.
      cl_wd_dynamic_tool=>create_nodeinfo_from_struct(
        parent_info = rootnode_info
        node_name = tablename
        structure_name = tablename
        is_multiple = abap_true ).
      DATA:
            stru_tab TYPE REF TO data.
      FIELD-SYMBOLS: <tab> TYPE table.
      CREATE DATA stru_tab TYPE TABLE OF (tablename).
      ASSIGN stru_tab->* TO <tab>.
      SELECT * FROM (tablename) INTO CORRESPONDING FIELDS OF TABLE <tab>.
      dyn_node = wd_context->get_child_node( name = tablename ).
      dyn_node->bind_table( <tab> ).

    You should create a structure dynamically and use this as the context structure. See the coding below, where a structure is created, which contains CARRID and CONNID.
    DATA: node_info type ref to if_wd_context_node_info,
          struct_type TYPE REF TO cl_abap_structdescr,
          table_type  type ref to cl_abap_tabledescr,
          comp_tab    TYPE cl_abap_structdescr=>component_table,
          comp        LIKE LINE OF comp_tab,
          my_table    type ref to data,
          my_row      type ref to data.
      field-symbols: <table> type table,
                     <row> type data,
                     <flight> type sflight.
    * build a structure description from the list of single fields
      comp-name = 'CARRID'.
      comp-type ?= cl_abap_datadescr=>describe_by_name( 'S_CARR_ID' ).
      APPEND comp TO comp_tab.
      comp-name = 'CONNID'.
      comp-type ?= cl_abap_datadescr=>describe_by_name( 'S_CONN_ID' ).
      APPEND comp TO comp_tab.
    * note this structure contains the fields "CONNID" and "CARRID"
      struct_type = cl_abap_structdescr=>create( comp_tab ).
    * now the nodeinfo is created
      node_info = wd_context->get_node_info( ).
      node_info = node_info->add_new_child_node(
        name                         = 'MY_NODE'
        IS_MANDATORY                 = ABAP_true
        IS_MULTIPLE                  = ABAP_true
        STATIC_ELEMENT_RTTI          = struct_type
        IS_STATIC                    = ABAP_false
    * fill new node;
      data: l_node type ref to if_wd_context_node,
            l_flight type STANDARD TABLE OF sflight.
      l_node = wd_context->get_child_node( 'MY_NODE' ).
      l_flight = wd_assist->get_flights( ).
    *  if you could create a local data type, would be fine, but if you have to do it dynamically ...
      struct_type = node_info->GET_STATIC_ATTRIBUTES_TYPE( ).
    * create tabledescriptor from structdescription (standard table, no keys)
      table_type = cl_abap_tabledescr=>create( p_line_type = struct_type ).
      create data my_table type handle table_type.
      assign my_table->* to <table>.
      loop at l_flight assigning <flight>.
        create data my_row type handle struct_type.
        assign my_row->* to <row>.
        move-corresponding <flight> to <row>.
        append <row> to <table>.
      endloop.
      l_node->bind_table( <table> ).

  • Dynamic service binding in ESB

    Hi,
    I am trying to do dynamic binding in ESB (using service registry key) and facing the following issue:
    1>I have added the uddi Inquiry url in the esb_config.ini:
    uddiInquiryURL=http://ossi-1042.idc.oracle.com:8888/registry/uddi/inquiry/
    2>In the ESB, I am invoking BPEL through soap service. There are 2 BPEL processes, say B1 and B2. I am giving the wsdl location of B1, and in the endpoint properties i am adding the registry key of B2 (so that I can find out if the registry key property is working):
    <endpointProperties>
    <property name="registryServiceKey" value="uddi:797f8d80-fbbf-11dc-a4bb-27e52611a4ba"/>
    </endpointProperties>
    When I run the instance, always B1 is getting invoked, proving that the registry key is not being used and thus dynamic service binding is happening.
    Kindly help me out in this.
    Thanks and regards,
    Pavan

    I tried applying the patch, but it gives the following error:
    OPatch detects your platform as 207 while this patch 6133448 supports platforms:
    0 (Generic Platform)
    This patch is not suitable for this operating system.
    Please contact support for the correct patch.
    ERROR: OPatch failed during pre-reqs check.
    OPatch returns with error code = 150
    I downloaded for the OS I am on, but always the generic patch downloads; i guess this generic one should work for all platforms. Opatch version is 1.0.0.0.56.

  • Got the mismatchedAssignmentFailure in the Dynamic partnerlink

    Hi Friends,
    while i am trying to implementing the Dynamic partnerlink, i got the mismatchedAssignmentFailure. can you please find the below exceptionn and suggest me what should i needs to do.
    java.lang.Exception: oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: faultName: {{http://docs.oasis-open.org/wsbpel/2.0/process/executable}mismatchedAssignmentFailure} messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage} at oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestModel.java:575) at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:381) at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:299) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.sun.el.parser.AstValue.invoke(Unknown Source) at com.sun.el.MethodExpressionImpl.invoke(Unknown Source) at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53) at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1256) at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:93) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96) at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:93) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96) at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:789) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:306) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:186) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:27) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.help.web.rich.OHWFilter.doFilter(Unknown Source) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.sysman.emSDK.license.LicenseFilter.doFilter(LicenseFilter.java:102) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:447) at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:447) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177) at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.sysman.emas.fwk.MASConnectionFilter.doFilter(MASConnectionFilter.java:41) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:176) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.sysman.eml.app.AuditServletFilter.doFilter(AuditServletFilter.java:183) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.sysman.eml.app.EMRepLoginFilter.doFilter(EMRepLoginFilter.java:203) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.sysman.core.model.targetauth.EMLangPrefFilter.doFilter(EMLangPrefFilter.java:158) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.sysman.core.app.perf.PerfFilter.doFilter(PerfFilter.java:141) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.sysman.eml.app.ContextInitFilter.doFilter(ContextInitFilter.java:542) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111) at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313) at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413) at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94) at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161) at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:57) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) at weblogic.work.ExecuteThread.run(ExecuteThread.java:178) Caused by: oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException: faultName: {{http://docs.oasis-open.org/wsbpel/2.0/process/executable}mismatchedAssignmentFailure} messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage} at oracle.sysman.emSDK.webservices.wsdlapi.dispatch.DispatchUtil.invoke(DispatchUtil.java:260) at oracle.sysman.emSDK.webservices.wsdlparser.OperationInfoImpl.invokeWithDispatch(OperationInfoImpl.java:992) at oracle.sysman.emas.model.wsmgt.PortName.invokeOperation(PortName.java:729) at oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestModel.java:570) ... 76 more Caused by: javax.xml.ws.soap.SOAPFaultException: faultName: {{http://docs.oasis-open.org/wsbpel/2.0/process/executable}mismatchedAssignmentFailure} messageType: {{http://schemas.oracle.com/bpel/extension}RuntimeFaultMessage} at oracle.j2ee.ws.client.jaxws.DispatchImpl.throwJAXWSSoapFaultException(DispatchImpl.java:1024) at oracle.j2ee.ws.client.jaxws.DispatchImpl.invoke(DispatchImpl.java:808) at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.synchronousInvocationWithRetry(OracleDispatchImpl.java:235) at oracle.j2ee.ws.client.jaxws.OracleDispatchImpl.invoke(OracleDispatchImpl.java:106) at oracle.sysman.emSDK.webservices.wsdlapi.dispatch.DispatchUtil.invoke(DispatchUtil.java:256) at oracle.sysman.emSDK.webservices.wsdlparser.OperationInfoImpl.invokeWithDispatch(OperationInfoImpl.java:992) at oracle.sysman.emas.model.wsmgt.PortName.invokeOperation(PortName.java:729) at oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestModel.java:569) at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:381) at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:298) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.sun.el.parser.AstValue.invoke(Unknown Source) at com.sun.el.MethodExpressionImpl.invoke(Unknown Source) at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMethodBinding.invoke(MethodExpressionMethodBinding.java:53) at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodBinding(UIXComponentBase.java:1256) at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand.java:183) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96) at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:102) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$1.run(ContextSwitchingComponent.java:92) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361) at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.broadcast(ContextSwitchingComponent.java:96) at oracle.adf.view.rich.component.fragment.UIXInclude.broadcast(UIXInclude.java:96) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:475) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:756) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._invokeApplication(LifecycleImpl.java:788) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:306) at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:186) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227) at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125) at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300) at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.help.web.rich.OHWFilter.doFilter(Unknown Source) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.emSDK.license.LicenseFilter.doFilter(LicenseFilter.java:101) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446) at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271) at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177) at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.emas.fwk.MASConnectionFilter.doFilter(MASConnectionFilter.java:41) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:175) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.eml.app.AuditServletFilter.doFilter(AuditServletFilter.java:179) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.eml.app.EMRepLoginFilter.doFilter(EMRepLoginFilter.java:203) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.core.model.targetauth.EMLangPrefFilter.doFilter(EMLangPrefFilter.java:158) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.core.app.perf.PerfFilter.doFilter(PerfFilter.java:141) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.sysman.eml.app.ContextInitFilter.doFilter(ContextInitFilter.java:542) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111) at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313) at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413) at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94) at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161) at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27) at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715) at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681) at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321) at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120) at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277) at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183) at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454) at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209) ... 1 more
    Thanks
    Hari Mandadapu.

    Do you assign a WS-Addressing based variable to the PartnerLink you want to invoke? And do you initialize this variable with e.g. an xml fragment.
    Regards,
    Melvin

  • Dynamic Partnerlink to ESB dbAdapter service

    I have many stored procedures (around 40!) to call from a BPEL process. To handle errors coming back from these (sqlerrm) and the associated human interaction to suspend then resume the process, I have the partnerlink call inside a double loop. I don't want to repeat this 40 times, and also may want to be able to reconfigure the calls (execution order, exclude/add some etc.). So far to achieve this, I've created and tested the double loop, created a dbAdapter to get the endpoints from a db table, and am now trying to get dynamic partner linking to work with this. Each service call is registered in the ESB as a dbAdapter and exposed as an invokable service (not via a routing service). I can successfully call each of these individually.
    I've read Carey's cookbook article in detail (great article!) and got it working nicely with a plain ol' web service and am able to loop through the dbAdapter results to get the endpoint addresses. Now I'm having trouble getting it to work with one of these ESB-exposed dbAdapters. I've tried using the concrete WSDL from the ESB in the dynamic partnerlink - but even though I can dynamically assign the endpoint at runtime, it seems to ignore this and always calls the same service. I've then spent many frustrating hours trying to create a WSDL template from the ESB concrete WSDL to import into my process at design-time - so far to no avail.
    I notice that the WSDL for these ESB-exposed dbAdapters is about "3 levels deep" that is they each import another WSDL or schema including one for the dbAdapter itself. Even though I think the db interaction should not be exposed outside of the ESB (to the caller) - only the "front" of the service should be.
    Am I completely on the wrong track here? or will more perseverance pay off and I will get it working? Has anyone successfully done this? please help...
    http://www.oracle.com/technology/pub/articles/bpel_cookbook/carey.html

    I figured that in bpel 2.0 EndpointReference element needs to be wrapped in a <service-ref> element BPEL 2.0 Dynamic Partnerlink mismatchedAssignmentFailure error . However it requires it to be static configuration.
    How can I make it dynamic to get set the address from a variable ?
    Please help.
    Edited by: 925432 on Jun 18, 2012 6:13 PM

  • LOV Mode (Dynamic List Binding)

    Hi All,
    I'm trying to work with Dynamic List Binding with LOV Mode.
    Could anyone Give me the detail Information about the LOV Mode. What is data source List, what is target list and what is Display attribute. How can we use LOV Mode.
    Thanks,
    -Satish

    Hi,
    otn.oracl.com/products/jdev. Grant Ronald created two screencams for the JDeveloper 11 section explaining LOV
    Frank

  • 10g Signal Handlers and Dynamic Binding Problems on Mac OS X

    I have the following env vars set up, and it seems the client libs show a deadl\
    ock behavior post installation. SqlPlus exhibits a similar problem with 10g cli\
    ent libs on the Mac, since it simply hangs for 20 secs before returning the pro\
    mpt. I have G4 10.3.4 Mac, and 3.3 (1640) gcc, and still haunted by this probl\
    em...
    ORACLE_HOME=/Users/Oracle/10g/orahome
    ORACLE=ORACLE_HOME/bin
    ORACLE_BASE=/Users/Oracle/10g
    DYLD_LIBRARY_PATH=/Users/Oracle/10g/orahome/lib
    a) ktrace sqlplus user/pass@db
    b) kdump -R | grep sigaction gives:
    885 sqlplus 5.877734 CALL sigaction(0x2,0xbffff500,0xbffff570)
    885 sqlplus 0.001252 RET sigaction 0
    885 sqlplus 0.002032 CALL sigaction(0xd,0xbfff90f0,0xbfff9160)
    885 sqlplus 0.001831 RET sigaction 0
    885 sqlplus 0.001293 CALL sigaction(0x12,0xbfffb6e0,0xbfffb750)
    885 sqlplus 0.001234 RET sigaction 0
    885 sqlplus 0.001551 CALL sigaction(0x12,0xbfffbda0,0xbfffbe10)
    885 sqlplus 0.001401 RET sigaction 0
    885 sqlplus 0.001331 CALL sigaction(0x2,0xbfffd090,0xbfffd100)
    885 sqlplus 0.001333 RET sigaction 0
    This shows a 5.9 sec delay for the first sigaction, and a full response is received some long 20 secs later on the prompt.
    Some feedback from engineering regarding this issue since the 9i release has been:
    "This is a known problem with signal handlers and the lazy binding we have on Mac OS X. A small change to how Oracle library's signal
    handler is installed using _signal_nobind(3) and
    _dyld_lookup_and_bind_fully(3) could help to solve this problem.
    The problem that we are trying to avoid is a possible dead lock from
    code that could be called in a signal handler when the thread that
    gets the signal is in the middle of lazy binding a symbol. So when a
    signal handlers installed the default action is to cause it to be
    bound fully. This is made very expensive by the mismatch of the
    interfaces to signal(3) and segvec(2) like routines which are passed
    an address and the dynamic linker that wants a global symbol name. So the end result is to call the routine _dyld_bind_fully_image_containing_address(3) with the address of the signal handler to be bound. Which binds everything in the image (in this case the Oracle shared library).
    We have had problems like this before. For example: [This is what is
    done in usleep(3)]
    usleep()
    /* code removed for this example */
    setvec(vec, sleepx);
    #ifdef __DYNAMIC__
    _dyld_lookup_and_bind_fully("_usleep", NULL, NULL);
    (void) _sigvec_nobind(SIGALRM, &vec, &ovec);
    #else
    (void) sigvec(SIGALRM, &vec, &ovec);
    #endif
    static void sleepx(int unused)
    ringring = 1;
    The use of _sigvec_nobind(2) (or _signal_nobind(3) ) and the use of
    _dyld_lookup_and_bind_fully(3) will cause just the needed symbols used by the signal handler. "
    It seems this issue hasn't been resolved in the most recent 10g client release.Can anyone shed some light one this issue?
    For better demonstration, here is a series of steps we took here:
    sigaction.c - C file produced by "proc sigaction.pc"
    sigaction.pc - ProC source file
    gcc_sig* - Shell script to compile sigaction.c
    ktrace.sigtest - raw ktrace output from running sigtest
    ktrace.sqlplus - raw ktrace output from running sqlplus
    kdump.sqlplus - output of kdump -R on ktrace.sqlplus
    kdump.sigtest - output of kdump -R on ktrace.sigtest
    sigaction.lis - auxiliary file produced by proc
    1. sigaction.pc:
    #include <stdio.h>
    #include <stdlib.h>
    #include "/Users/oracle/10g/orahome/precomp/public/sqlca.h"
    int main(int argc, char **argv) {
    char user[30], passwd[30], db[40];
    char con_str[100], date[10], *icp;
    strcpy(user, "XXXXXXXX");
    strcpy(passwd, "XXXXXXXX");
    strcpy(db, "db_name");
    sprintf(con_str,"%s/%s@%s",user,passwd,db);
    EXEC SQL CONNECT :con_str;
    EXEC SQL SELECT SYSDATE INTO :date FROM DUAL;
    printf("SYSTEM DATE = %s\n",date);
    EXEC SQL COMMIT RELEASE;
    2. gcc_sig:
    #!/bin/sh
    CFLAGS="-I$ORACLE_HOME/precomp/public -I/usr/include"
    CFLAGS="$CFLAGS -I$ORACLE_HOME/lib -L$ORACLE_HOME/lib"
    ORALIBS="-L$ORACLE_HOME/lib -lclntsh $ORACLE_HOME/lib/nautab.o $ORACLE_HOME/lib/naeet.o"
    CC="gcc -g"
    PROG=$1
    OUTPUT=$2
    $CC $CFLAGS $PROG -o $OUTPUT $ORALIBS
    3. Generate the rest of the output files for your viewing of the results based on the commands provided above.
    Thanks!

    It's a delay, not a deadlock, that originatesfrom the way Oracle
    libraries handle dymaic bindings.to "dynamic" bindings. Maybe prebinding could help ?
    export DYLD_PREBIND_DEBUG=1ronr@[email protected]:/Users/ronr
    sqlplus "/ as sysdba"dyld: sqlplus: prebinding disabled because library: /Users/oracle/product/server/10.1/lib/libsqlplus.dylib got slid
    dyld: in map_image() determined the system shared regions ARE used
    dyld: 2 two-level prebound libraries used out of 5
    Ronald
    http://homepage.mac.com/ik_zelf/oracle/

  • Dynamic region table with binding problem

    Hi. I'm using jdev 11.1.1.3 and ADF full stack.
    My app uses single page approach with ADF libraries and a dynamic region to show content. Main page includes a menu bar which is created on session startup and is used to load task flows from libraries.
    I have a class to provide some table functionality like CRUD, multi-row delete, etc and I need to reuse with every table included in libraries.
    To do this, in main web app I have a managed bean to hold table binding and to provide this common functions to all fragments if needed.
    I think it must be in request scope as fragment changes.
    Here's the problem: when I navigate to a fragment which contains a table with binding, first time goes well,
    but next time table, when fragment changes,new table displays without header or without data.
    If I go to another fragment without binding and return to a fragment with problem, it displays well. With fragments without table binding, it works OK.
    I've tried changing scope of this 'general' managed bean, but same thing. If I put a bean for each fragment, it works OK.
    So, how can I 'share' this managed bean through every table? Any suggestions? is it possible?
    Please, help me ....
    Thanks,
    DEMR.

    I am seeing a similar problem in my app. I have a main menu that drives a dynamic region. If the task flow that gets displayed in the dynamic region also contains a dynamic region, when the inner dynamic region is refreshed to point to a second task flow, the page does not render correctly. The errors we have seen include data in tables not being displayed in some cases, and PPR errors in other cases. In both cases, if the inner dynamic region is replaced (by a single bounded task flow with navigation logic in a template, for example) the errors go away. There appears to be issues involved with including a dynamic region within a dynamic region.
    Have you made any progress on solving your issue?

  • Maybe you are looking for

    • EAL extract fails with ORA-03113 end-of-file on communication channel error

      Hi, We are trying to run an EAL (v11.1.1.4) extract from an HFM (v9.3.1.4) environment onto Oracle database. We are able to run the extract successfully for few hundred records, but when the records exceeds 10 million we get the error below [03 Dec 2

    • How do I change button skin with function arguments?

      Hi guys, I am building a map witch I represent with buttons grid 40*26, now I wont to create a function in action script that will get a string that contains the folder name where I am storing the buttons skin data for example: [Embed("maps/grass/upS

    • Strange red eye editing result on iPhone 4s

      I experienced a strange result while using the red eye removal function on my iPhone 4s. I clicked on the red eye removal button, clicked on my friend's eye in the photo and then it seems that an image was posted over her eye. I saved the edits then

    • How to Set up the  variables and others to compile and Run Java Programs

      Hello, I have just downloaded the jdk1.6.0_07 and jre1.6.0_07 and installed it in C:\Program files\Java in my Windows XP ,So please tell me how to sett up the enviroment variables etc to compile and run Java Programs from Command Prompt. thanks

    • AS2 premises for using XI

      Hi, after doing a workshop with Seeburger (AS2, EDI) a client of ours wants to get rid of his VAN solution for sending EDIFACT. Therefore he would like to use the AS2 Adapter of Seeburger and also the BIConverter. But the Network of our client is tha