Fault propagation from Composite - OSB - Caller

Good morning
I'm trying to implement a OSB as virtualizer from some composite services. For that I have connected the composite via direct binding to the OSB and created a OSB project where I import from URL the composite db WSDL and dependencies and create a Business Service over it. After that I'm creating a proxy service over the created business service automatically.
Everithing works fine in the happy cenario, but the problem is when a business exception configured in the composite occurs.
For example, in this composite I have schematron validation that validate if some fields are correct or not. In case of miss function a ValidationError is thrown.
If I'm calling directly the composite for example from SOAPUi I get the schematron configured fault with:
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<env:Fault xmlns:fpre="urn:affinity.xxx.xxx.xxxx.xx">
<faultcode>fpre:internalFault</faultcode>
<faultstring/>
<faultactor/>
<detail>
<ns1:ValidationErrors xmlns:sch="http://www.ascc.net/xml/schematron" xmlns:ns1="http://xmlns.oracle.com/pcbpel/validationservice" xmlns:urn="urn:affinity.xxx.xx.xxxx.xx">
<error>affinity.validation.name.en.mandatory</error>
<error>affinity.validation.name.fr.mandatory</error>
<error>affinity.validation.name.nl.mandatory</error>
<error>affinity.validation.scope.mustBeInternalOrExternal</error>
</ns1:ValidationErrors>
</detail>
</env:Fault>
</env:Body>
</env:Envelope>
But when calling via OSB I get:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server</faultcode>
<faultstring>BEA-380001: {urn:affinity.xxxxx.xxx.xx}internalFault</faultstring>
*<detail>*
*<con:fault xmlns:con="http://www.bea.com/wli/sb/context">*
*<con:errorCode>BEA-380001</con:errorCode>*
*<con:reason>{urn:affinity.xxxxx.xxx.xx}internalFault</con:reason>*
*<con:location>*
*<con:node>RouteTo_bc-core-affinity-service-bs</con:node>*
*<con:path>response-pipeline</con:path>*
*</con:location>*
*</con:fault>*
*</detail>*
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
Can someone help me how can I get the fault propagated to the details instead of the OSB fault ?
Thanks

This is because when OSB encounters a fault, the flow enters the exception pipeline which is composed of stage (or route )error handlers, service error handler and then system error handler. The sequence of flow is :
stage ( or route error handler) --> service error handler --> system error handler.
If some handler is not available, the error is automaticlly propogated to the next handler in the chain. So all errors goes to system error handler unless you specify a reply action within one of the intermediate error handler in which case further flow down the exception pipeline is suspended. System error handler is out of your control and if error reaches here, OSB generates its own fault and replaces the existing one. So if you want to have control make sure the fault is not propogated to the system error handler
Best place to view the exception sequence flow is the trace viewin the test console

Similar Messages

  • Caller id propagation from WebLogic Express to WebLogic Server

    Hi all,
    I'm planning on a WebLogic configuration where Servlets executing in
    WebLogic Express invoke EJBs executing in WebLogic Server. The Web container
    and the EJB container are thus executing in different processes.
    Given that a user is authenticated in WebLogic Express using e.g. the
    J2EE-standard form-based authentication, would the user id be propagated to
    the EJB container automatically?
    Thanks
    Patrik Gottfridsson
    Valtech

    Call flow was :
    CUCM---Router-----MPLS----Router---CME
    extension 1040 from cucm was calling extension 2800 on CME, and on the display from the phone that is registered on CME had the "UNKNOWN" on it.
    But I just figured it out.
    Thanks anyways!

  • OSB calling BPM with SAML

    Hi all
    I have a composite service in my PBM server which has security WS-Policy forcing a SAML token to be passed together with the request (oracle/wss10_saml_token_with_message_protection_service_policy - method should be sender-vouches).
    In OSB, when I try to create my business service pointing to the WSDL with SAML, I receive this error (environment is 11g):
    *[OSB Kernel:398133]WSSP 1.2 policy assertions (Web Services Security Policy 1.2) are not allowed on this service*
    So what is the right way to make an OSB call to a BPEL/BPM SAML-protected service? Do i need to install OWSM on the same server as OSB and use the same policies?
    When I tested OSB proxy service calling a another OSB PS protected with SAML, I was able to add to the SAML WSDL this policy and it worked fine.
    +<wsp:Policy+
    xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
    xmlns:wssp="http://www.bea.com/wls90/security/policy"
    xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
    xmlns:wls="http://www.bea.com/wls90/security/policy/wsee#part"
    wsu:Id="SAMLSenderVouches">
    +<wssp:Identity>+
    +<wssp:SupportedTokens>+
    +<wssp:SecurityToken+
    TokenType="http://docs.oasis-open.org/wss/2004/01/oasis-2004-01-saml-token-profile-1.0#SAMLAssertionID">
    +<wssp:Claims>+
    +<wssp:ConfirmationMethod>sender-vouches</wssp:ConfirmationMethod>+
    +</wssp:Claims>+
    +</wssp:SecurityToken>+
    +</wssp:SupportedTokens>+
    +</wssp:Identity>+
    +</wsp:Policy>+
    But on BPEL/BPM side, I have only a pre-defined set of policies and no matter what I chose I can't create my Business service based on that.
    Please, need some advice here.
    Regards
    Giovani

    Hi all
    I have a composite service in my PBM server which has security WS-Policy forcing a SAML token to be passed together with the request (oracle/wss10_saml_token_with_message_protection_service_policy - method should be sender-vouches).
    In OSB, when I try to create my business service pointing to the WSDL with SAML, I receive this error (environment is 11g):
    *[OSB Kernel:398133]WSSP 1.2 policy assertions (Web Services Security Policy 1.2) are not allowed on this service*
    So what is the right way to make an OSB call to a BPEL/BPM SAML-protected service? Do i need to install OWSM on the same server as OSB and use the same policies?
    When I tested OSB proxy service calling a another OSB PS protected with SAML, I was able to add to the SAML WSDL this policy and it worked fine.
    +<wsp:Policy+
    xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
    xmlns:wssp="http://www.bea.com/wls90/security/policy"
    xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
    xmlns:wls="http://www.bea.com/wls90/security/policy/wsee#part"
    wsu:Id="SAMLSenderVouches">
    +<wssp:Identity>+
    +<wssp:SupportedTokens>+
    +<wssp:SecurityToken+
    TokenType="http://docs.oasis-open.org/wss/2004/01/oasis-2004-01-saml-token-profile-1.0#SAMLAssertionID">
    +<wssp:Claims>+
    +<wssp:ConfirmationMethod>sender-vouches</wssp:ConfirmationMethod>+
    +</wssp:Claims>+
    +</wssp:SecurityToken>+
    +</wssp:SupportedTokens>+
    +</wssp:Identity>+
    +</wsp:Policy>+
    But on BPEL/BPM side, I have only a pre-defined set of policies and no matter what I chose I can't create my Business service based on that.
    Please, need some advice here.
    Regards
    Giovani

  • How to  Instantiate Oracle BPM Process Webservice from the OSB

    Hi,
    In our project we have one requirement i.e Instantiate Oracle BPM Process Webservice from the OSB.After register BPM service in to OSB I am creating one Message flow to instantiate BPM Process.
    first call to startSession Operation, then use response of startSession operation is used as reqest for BPM process operation.
    Can u tell me how do we use response of startSession operation to the request of BPM process.
    Thanks in Advance.

    An easier way of instantiating a BPM process via a WS call is to set the authentication type to 'Username Token Profile' on your web service operation in BPM studio and then redeploy it. If you use this type of security on your bpm process operations you can start the process in one call instead of having to get a session first and then starting the process.
    Once you've updating the process, re-register the new process WSDL and business service with OSB (or import it manually) and you can just call the start process operation in one request (passing a username and password using the WS-UsernameToken method) without having to get a session first.
    Hope this all make sense,
    Mike.

  • Fault Handling Issue in OSB

    Hi,
    This is regarding SOAP fault handling in OSB11g.
    i am expecting that whenever OSB proxy service recieves a fault response the flow should move to service error handler if any. But its not happening.
    We tested our service with SOA Test stubs and SOAP UI mock services. When SOA test stub send fault response OSB considering it as normal response. But when the same fault is sent by SOAP UI mock service OSB is considering it as fault and going to service error handler.
    Now the same is happening when we replaced the service provider with one of the .NET service. The fault response is in SOAP 1.1 structure.
    Please let me whats the difference or any setting or HTTP response code we need to look at.
    Thanks & Regards
    Siva

    Hi Anuj,
    I am using the same fault structure which is working in Soap UI mock service. Still its not working in Soa test stub. And now facing the same issue when fault comes from .NET based service provider.
    Will verify once to see whats the response code thats being sent.
    Thanks
    Siva

  • Binding fault in SOA composite

    Hi all,
    we are having trouble with a soa composite wich has 1 web service and 3 jca db adapters.
    After deployment, only the first time the web service is consumed all is ok and the ws client receive the response (some data from db), but starting from the second intent we obtain the following error:
    <messages><input>
    <InvokeConsDeCuentasPorIdentificacion_ConsDeCuentasPorIdentificacion_InputVariable><part name="InputParameters" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><InputParameters xmlns="http://xmlns.oracle.com/pcbpel/adapter/db/FB_PKG/NAOS_PQCON_DOM_CUENTAS/PRCONCUENTASPORIDENTIFICACION/">
    <PVTIPODEIDENTIFICACION>ced</PVTIPODEIDENTIFICACION>
       <PVIDENTIFICACION>0914390612</PVIDENTIFICACION>
    </InputParameters></part></InvokeConsDeCuentasPorIdentificacion_ConsDeCuentasPorIdentificacion_InputVariable></input><fault>
    <bpelFault><faultType>0</faultType><bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'ConsDeCuentasPorIdentificacion' failed due to: Stored procedure invocation error.
    Error while trying to prepare and execute the NAOS_PQCON_DOM_CUENTAS.PRCONCUENTASPORIDENTIFICACION API.
    An error occurred while preparing and executing the NAOS_PQCON_DOM_CUENTAS.PRCONCUENTASPORIDENTIFICACION API. Cause: java.sql.SQLException: ORA-06550: line 1, column 7:
    PLS-00201: identifier 'NAOS_PQCON_DOM_CUENTAS.PRCONCUENTASPORIDENTIFICACION' must be declared
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    Check to ensure that the API is defined in the database and that the parameters match the signature of the API.  This exception is considered not retriable, likely due to a modelling mistake.  To classify it as retriable instead add property nonRetriableErrorCodes with value "-6550" to your deployment descriptor (i.e. weblogic-ra.xml).  To auto retry a retriable fault set these composite.xml properties for this invoke: jca.retry.interval, jca.retry.count, and jca.retry.backoff.  All properties are integers.
    The invoked JCA adapter raised a resource exception.
    Please examine the above error message carefully to determine a resolution.
    </summary></part><part name="detail"><detail>ORA-06550: line 1, column 7:
    PLS-00201: identifier 'NAOS_PQCON_DOM_CUENTAS.PRCONCUENTASPORIDENTIFICACION' must be declared
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    </detail></part><part name="code"><code>6550</code></part></bindingFault></bpelFault></fault><faultType>
    <message>0</message></faultType></messages></details>
    The oracle package and sp exist and are compiled without errors, and the user has the rights to execute it.
    Thank you.
    Efren.

    Hi Kevin,
    Thanks for the idea!!
    Just wanted to check if there is a way to set the variable from within the soa composite with the error message which can then be displayed on OIM UI. Like if there is any error i.e., if we try to assign a task to the user who is not present in OIM, the error gets displayed and the status of the task is shown as "ALERTED" . Is it possible to achieve the similar behaviour with custom errors!!
    Thanks,
    Hrushi

  • Throw back same adapter fault - Mediator only composite

    Hi
    How are you doing!
    I have a scenario where there is a Mediator and DBAdapter.
    We are using fault policy to handle all faults.
    Whenever there is a fault in DBAdapter, when handled using fault policy (to rethrow fault), Mediator is wrapping the original fault and giving its own fault(message below)
    Is there a way to get back the same DBAdapter fault as the consumer of this service has to know what is the exact fault.
    Please note that BPEL is not to be used in this case(as a design decision in the project), so this has to be achieved only using the Mediator.
    I've also tried adding fault to WSDL's of DBAdapter and Exposed service WSDL manually, but no luck.
    Converted fault message
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
       <env:Header/>
       <env:Body>
          <env:Fault>
             <faultcode>env:Server</faultcode>
             <faultstring>oracle.tip.mediator.infra.exception.MediatorException: ORAMED-03303:[Unexpected exception in case execution]Unexpected exception in request response operation "insert" on reference "ParentChildDBAdapter". Possible Fix:Check whether the reference service is properly configured and running or look at exception for analyzing the reason or contact Oracle Support Services.</faultstring>
             <faultactor/>
             <detail>
                <exception/>
             </detail>
          </env:Fault>
       </env:Body>
    </env:Envelope>
    But the actual DBAdapter fault is
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
       <env:Header/>
       <env:Body>
          <env:Fault>
             <faultcode>env:Server</faultcode>
             <faultstring>Exception occured when binding was invoked.
    Exception occured during invocation of JCA binding: "JCA Binding execute of Reference operation 'insert' failed due to: DBWriteInteractionSpec Execute Failed Exception.
    insert failed. Descriptor name: [ParentChildDBAdapter.PocComplaints].
    Caused by java.sql.BatchUpdateException: ORA-00001: unique constraint (SOADEMO.POC_PRTCMP_PK) violated
    Please see the logs for the full DBAdapter logging output prior to this exception.  This exception is considered not retriable, likely due to a modelling mistake.  To classify it as retriable instead add property nonRetriableErrorCodes with value "-1" to your deployment descriptor (i.e. weblogic-ra.xml).  To auto retry a retriable fault set these composite.xml properties for this invoke: jca.retry.interval, jca.retry.count, and jca.retry.backoff.  All properties are integers.
    The invoked JCA adapter raised a resource exception.
    Please examine the above error message carefully to determine a resolution.</faultstring>
             <faultactor/>
             <detail>
                <exception>ORA-00001: unique constraint (SOADEMO.POC_PRTCMP_PK) violated</exception>
             </detail>
          </env:Fault>
       </env:Body>
    </env:Envelope>
    Appreciate if you could help me on this
    Regards
    RaviKiran

    http://www.apple.com/feedback
    request here we are just users non of us are apple workers apart from the mod
    who dont pass on posts from this forum to apples pm's

  • OSB call to remote Web Service via https proxy and https CONNECT problem

    Hi
    I have a service that calls a web service on another server as a web service. This call is via https and the certificate validation raises no errors.
    I now want this call to go via a squid httpd proxy on port 3128 on some machine. So I would like to use HTTP CONNECT (RFC 2817) proxying,. But when I set up this as a proxy, I am getting "Certificate chain" error messages. The certifcate chains is no different now from when I called without the http proxy, so what am I doing wrong? Does OSB support HTTP CONNECT?
    -Johan

    The exeption we are getting is BEA-380000
    General runtime error: [Security:090477]Certificate chain received from XXX - 123.123.123.123 --> test.salesforce.com was not trusted causing SSL handshake failure.
    This is of course not relevant if the callout were using CONNECT. In the CONNECT scenario, OSB would not care about XXX's certificate.

  • Instantiate Oracle BPM Process Webservice from the OSB.

    Hi,
    In our project we have one requirement i.e Instantiate Oracle BPM Process Webservice from the OSB.After register BPM service in to OSB I am creating one Message flow to instantiate BPM Process.
    first call to startSession Operation, then use response of startSession operation is used as reqest for BPM process operation.
    Can u tell me how do we use response of startSession operation to the request of BPM process.
    Thanks in Advance.

    An easier way of instantiating a BPM process via a WS call is to set the authentication type to 'Username Token Profile' on your web service operation in BPM studio and then redeploy it. If you use this type of security on your bpm process operations you can start the process in one call instead of having to get a session first and then starting the process.
    Once you've updating the process, re-register the new process WSDL and business service with OSB (or import it manually) and you can just call the start process operation in one request (passing a username and password using the WS-UsernameToken method) without having to get a session first.
    Hope this all make sense,
    Mike.

  • I keep getting calls from a block caller id and it's some dude speaking arabian what do i do? How do i stop this?

    I keep getting calls from a block caller id and it's some dude speaking arabian what do i do? How do i stop this?

    Stop answering calls with blocked numbers. If it's someone who really wants to talk to you, they'll leave you a message and you can call them back.

  • I have bought an Item from apple store Called "Scarry Tribes , 19,999 sale ! . from develober Called "XYRALITY GmbH" Type: In App Purchase , and no thing added to my Account in the Game !!?

    I have bought an Item from apple store Called "Scarry Tribes , 19,999 sale !" . from develober Called "XYRALITY GmbH" Type: In App Purchase , and no thing added to my Account in the Game !!?
    and if you cam Help Me I'll Copy the Invoice or Order number .. !

    While I am no fan of Best Buy and would not buy a lightbulb from them I doubt you issues have anything to do with your iMac and more to do with your lack of experience and simply getting bad advice. Judging by you post I suspect you have loaded your computer down with a lot of crapware and that  has caused it's problems. For example running antivirus apps on a Mac not only is a waste of time, it's a waste of money, system resources and will eventually create more problems that it solves. Please begin educating yourself on the subject by reading Thomas Reeds articles on the subject, Thomas is a frequent and knowledgeable contributor to these forums. You can find his webpage at http://www.reedcorner.net/tech-guides/
    The good news is here are absolutely no, zero, zippo viruses for OS X. There are other types of malware available (for example trojans) however they differ greatly from viruses in that the use has to download and install them, whereas viruses do not work that way. OS X is not like MS Windows and is extremely secure.
    My suggestion at this point would be to clean your computer of the crapware (including antivirus apps) however before doing so please download and install EtreCheck and post its report. Then we can see how your computer has been configured and begin to give you some advice on the next steps.

  • Query UCCX database for calls from a specific Caller ID

    Hi,
    I did some searching and could not find this answer specifically.
    I have a request from the call center supervisor to provide a report of all calls coming into the CSQ's showing all of the important data (date, time, answered, not answered, length of call, disposition, etc.) for calls from a specific caller ID for a specific date range.
    The caller ID starts with 9XX-XXX-XXXX, so of course UCCX Historical Reports will not display this number as a parameter in the Detailed Call by Call CCDR report because I am limited to the first 32,765 rows. I tried modifying the XML file but have not been successful.
    I tried doing a query through the CLI but not sure if I have the query right.
    Any insight?
    Thank you very much.

    I tried modifying the XML file for the Detailed Call CSQ Agent report
    ICD_Detailed_Call_CSQ_Agent_en_us.xml with the following:
    BEFORE:
    SELECT distinct callednumber FROM contactcalldetail
    AFTER:
    SELECT SKIP 10000 FIRST distinct 20000 callednumber FROM contactcalldetail
    Unfortunately, there are no changes in the available parameters shown:
    The number starts with a '9', so I need to skip the numbers that start with 408. Any help?

  • Works on local 10g Express but not 9i. : Got minus one from a read call

    Using a desktop I have a 3rd party tool that needs to access an Oracle 9i DB. The tool does not connect to the db at all. I also have Toad installed on the desktop and Toad can connect fine. The error message I get with the 3rd party tool is:
    "Got minus one from a read call"
    I have a laptop in which I have a local 10g Express installed along with the same 3rd party tool. The 3rd party tool can connect to the local Express db.
    I have written a java app. See below. When I run the app on the desktop machine ir produces the same error as the 3rd party tool.
    What is happening on the 9i server that is causing this error. I have seen this error posted on many sites but no responses. Any ideas/suggestions?
    Thanks
    import java.sql.*;
    class TestConnection {
    public static void main (String args []) throws SQLException
    Connection connection = null;
    try {
    // Load the JDBC driver
    String driverName = "oracle.jdbc.driver.OracleDriver";
    Class.forName(driverName);
    // Create a connection to the database
    String serverName = "119.133.45.3";
    String portNumber = "1606";
    String sid = "HCPSD";
    String url = "jdbc:oracle:thin:@" + serverName + ":" + portNumber + ":" + sid;
    String username = "HCPSODS";
    String password = "HCPSODS";
    connection = DriverManager.getConnection(url, username, password);
    } catch (ClassNotFoundException e) {
    System.out.println(e);
    } catch (SQLException e) {
    System.out.println(e);
    Statement stmt = connection.createStatement();
    ResultSet rset = stmt.executeQuery("select PROVIDER_NAME from HCPSODS.BLAZE_PROVIDER_VALUES");
    while (rset.next())
    System.out.println (rset.getString(1));
    stmt.close();
    }

    Here is a fix to this problem I found. Not sure if it will help:
    1. Go to directory $TNS_ADMIN on database tier or database home.
    2. Modify sqlnet.ora file with following.
    tcp.validnode_checking = yes
    Either set above directive value to NO or add machine name where jdeveloper is running to following directive.
    tcp.invited_nodes=(machin-name, machine-name)
    3. Bounce listener using addlnctl.sh under database directory.

  • Propagate fault message from ABAP server proxy to XI

    Hello
    My scenario is asynch HTTP -> async ABAP server proxy.
    I have searched a forum but I didn't find the ansver on my question:
    Is it possible to propagate a fault message from SAP system to XI in case of asyncronous ABAP Proxy in order to see in SXMB_MONI of XI?
    I see errors only on SAP side but this solution doesn't satisfied me I want to see all errors in one place.

    Hi,
    Have u used commit work at the end of the code.
    Can you please tell me what all configuration u have done.
    U have referred the ABAP Proxy configuration:
    /people/vijaya.kumari2/blog/2006/01/26/how-do-you-activate-abap-proxies
    Refer the below log for Client Proxy -
    /people/ravikumar.allampallam/blog/2005/03/14/abap-proxies-in-xiclient-proxy
    Chirag

  • How to pass a xml CDATA in string element when OSB calling a webservice?

    How to pass a xml CDATA in string element when OSB calling a webservice?
    I have a business service (biz) that route to operation of a webservice.
    A example of request to this webservice legacy:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:eg="example">
    <soapenv:Header/>
    <soapenv:Body>
    <ex:execute>
    <ex:arg><![CDATA[<searchCustomerByDocumentNumber>
    <documentNumber>12345678909</documentNumber>
    </searchCustomerByDocumentNumber>]]></ex:arg>
    </ex:execute>
    </soapenv:Body>
    </soapenv:Envelope>
    the type of ex:arg is a string.
    How to pass this CDATA structure to webservice in OSB?

    Steps to solve this problem:
    1. Create a XML Schema. E.g.:
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
         elementFormDefault="unqualified">
         <xs:complexType name="searchCustomerByDocumentNumber">
              <xs:sequence>
                   <xs:element name="documentNumber" minOccurs="0">
                        <xs:annotation>
                             <xs:documentation>
                             </xs:documentation>
                        </xs:annotation>
                        <xs:simpleType>
                             <xs:restriction base="xs:string" />
                        </xs:simpleType>
                   </xs:element>
         </xs:sequence>
         </xs:complexType>
         <xs:element name="searchCustomerByDocumentNumber" type="searchCustomerByDocumentNumber"></xs:element>
    </xs:schema>
    With this XSD, the XML can be generate:
    <?xml version="1.0" encoding="UTF-8"?>
    <searchCustomerByDocumentNumber xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="searchCustomerByDocumentNumber.xsd">
    <documentNumber>documentNumber</documentNumber>
    </searchCustomerByDocumentNumber>
    2. Create a XQuery to create a searchCustomerByDocumentNumber ComplexType. E.g.:
    (:: pragma bea:global-element-return element="searchCustomerByDocumentNumber" location="searchCustomerByDocumentNumber.xsd" ::)
    declare namespace xf = "http://tempuri.org/NovoSia/CreateSearchCustomerByDocumentNumber/";
    declare function xf:CreateSearchCustomerByDocumentNumber($documentNumber as xs:string)
    as element(searchCustomerByDocumentNumber) {
    <searchCustomerByDocumentNumber>
    <documentNumber>{ $documentNumber }</documentNumber>
    </searchCustomerByDocumentNumber>
    declare variable $documentNumber as xs:string external;
    xf:CreateSearchCustomerByDocumentNumber($documentNumber)
    3. In your stage in pipeline proxy add a assign calling the XQuery created passing the document number of your payload.
    Assign to a variable (e.g.: called searchCustomerByDocumentNumberRequest)
    4. Create another XQuery Transformation (XQ) to create a request to the webservice legacy. E.g.:
    <ex:arg>{fn-bea:serialize($searchCustomerByDocumentNumberRequest)}</ex:arg>
    For more information about xquery serialize function:
    41.2.6 fn-bea:serialize()
    You can use the fn-bea:serialize() function if you need to represent an XML document as a string instead of as an XML element. For example, you may want to exchange an XML document through an EJB interface and the EJB method takes String as argument. The function has the following signature:
    fn-bea:serialize($input as item()) as xs:string
    Source: http://docs.oracle.com/cd/E14571_01/doc.1111/e15867/xquery.htm

Maybe you are looking for