How to populate the SOAP Header in JCD/BP while consuming WebService?

Hello,
I am trying to invoke a external webservice through both JCD/BP in JCAPS513 and as per wsdl defination we need to send user and token information in the SOAP Header. When I imported the WebService defination into the JCDP/BP, I do not see message part corresponding to SOAP Header. Can anyone help me here?
Here is the WSDL message, operation & binding details:
<wsdl:operation name="GetOrderID"> <wsdl:operation name="GetOrderID"> <wsdl:message name="GetOrderIDSoapIn">
<wsdl:part name="parameters"
element="tns:GetOrderID"/>
</wsdl:message>
<wsdl:message name="GetOrderIDSoapOut">
<wsdl:part name="parameters"
element="tns:GetOrderIDResponse"/>
</wsdl:message>
<wsdl:message name="GetOrderIDWebServiceCredential">
<wsdl:part name="WebServiceCredential"
element="tns:WebServiceCredential"/>
</wsdl:message>
<wsdl:input message="tns:GetOrderIDSoapIn"/>
<wsdl:output message="tns:GetOrderIDSoapOut"/>
</wsdl:operation>
<soap:operation soapAction="http://xxxxxx.xxxx.xxx/V2/GetOrderID"
style="document"/>
<wsdl:input>
<soap:body use="literal"/>
{color:#ff0000} *<soap:header message="tns:GetOrderIDWebServiceCredential"*
* part="WebServiceCredential"*
* use="literal"></soap:header>*{color}
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>

Hi Ganesh,
Please go through this link.
http://www.sapag.co.in/SAP-XI-SOAP-Adapter-FAQ'S.html
I think this would be helpful for you..
Reward points if useful,
Swamy Kunche

Similar Messages

  • How to set the SOAP Header while publishing to Queue in the mediator

    Hi,
    I am trying to publish the message to a JMS AQ, from the Mediator service in the 11g Soa Suite. I want to add some properties as SOAP Header to the message and send it to the JMS AQ. I have seen the mediator process calling BPEL process, passing the SOAP Header values. In the BPEL process, we have the section <soap:binding> inside that I can give the <soap:header>and set the values.
    Could any one tell me how to do this in Mediator service which is calling the JMS AQ using adapter?
    Thanks,

    The solution in this thread is for VS .NET as this is the forum for CR in .NET.
    With Foxpro, I suspect you want to create a new thread in the SAP Crystal Reports - Legacy SDKs forum.
    Make sure you specify the exact version of CR used.
    - Ludek

  • How to modify the soap header of ebxml control?

    I need to change the soap header information of the ebxml control
    from
    <eb:CPAId>http://www.openuri.org/cpa</eb:CPAId>
    to
    <eb:CPAId>MyString</eb:CPAId>
    and I want to add some additional information to the header such as the wsse feature
    <wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/12/utility">
    <wsse:UsernameToken>
    <wsse:Username>1234</wsse:Username>
    <wsse:Password>5678</wsse:Password>
    <Organization>abc</Organization>
    <Domain>DEFAULT</Domain>
    </wsse:UsernameToken>
    </wsse:Security>
    Does anyone know where I can change the type value?
    Thanks, Kun

    Your code works. But if I place the TextInput in the formItem
    and form tags, the Y value becomes 0. You can try this one:
    <?xml version="1.0"?>
    <mx:Application xmlns:mx="
    http://www.adobe.com/2006/mxml">
    <mx:Form paddingBottom="0" paddingTop="0"
    paddingRight="0">
    <mx:FormItem label="Title:">
    <mx:TextInput width="275" id="newSongTitle"/>
    </mx:FormItem>
    <mx:FormItem>
    <mx:Button id="submitSongData" label="Add Song"
    width="150"/>
    </mx:FormItem>
    </mx:Form>
    <mx:Text text="{newSongTitle.x}" width="322"/>
    <mx:Text text="{newSongTitle.y}" width="322"/>
    <mx:Button label="set Y" click="{newSongTitle.y =
    newY.value}"/>
    <mx:NumericStepper id="newY" value="50" minimum="0"
    maximum="400"/>
    </mx:Application>

  • Setting up the Soap Header when consuming a web service.

    Hi SDN,
    I am trying to consume a web service,where I need to pass the soap header for sending the request to the sever.
    I am using if_ws_protocol_ws_header->SET_REQUEST_HEADER to set the Username and Password to the soap header. After a lot of trouble shooting I came to conclusion that the Username and Password are not being updated in soap header.
    I want to know how to set the soap header? I have tested the web service in the SOAP UI testing tool and it works fine taking the credentials. The webservice is using HTTPS protocol.Do we have any separate config for https. Do I need to pass the nonce and date created in the soap header for sure ? And is there any thing to be configured by basis team?
    Here is what I am trying to pass:
    ' <soapenv:Header>'
          '<wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">'
             '<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">'
                '<wsse:Username>XXXXXXX</wsse:Username>'
                '<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">XXXXX</wsse:Password>'
                '</wsse:UsernameToken>'
         ' </wsse:Security>'
          '/soapenv:Header>'
    Thank you.

    CONCATENATE
    '<soapenv:Header>'
    '<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"'
    'xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"'
    'xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">'
    '<wsse:UsernameToken>'
    '<wsse:Username>XXXXXX</wsse:Username>'
    '<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">XXXXXX</wsse:Password>'
    '<wsse:Nonce>' XXXXX'</wsse:Nonce>'
    '<wsu:Created>' XXXXX '</wsu:Created>'
    '</wsse:UsernameToken>'
    '</wsse:Security>'
    '</soapenv:Header>'
       INTO l_string.
    I solved my self and its working , Here is what I was passed.
    Thank you guys.

  • How to add Custom Attributes in the SOAP header for OWSM

    Hi,
    I like to know how to add the Custom Attributes in the SOAP header for OSWM username token authentication.
    Currently we are getting the header element like
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    here we need to add the attribute "soap:mustUnderstand="1" , so the element will look like
    <wsse:Security soap:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    Any info on this will be helpful.
    Thanks,
    ArunM

    Hi Jay, you can make it in more than 1 way.
    I suggest you the following:
    - create an URL iview that points to any URL you want.
    - define a Resource that points to the iview (with a window name, to open in new window)
    - define an Area that points to the resource
    - add your new Area to the your current Area Group
    Regards!

  • How do pass the UserID and Password in the SOAP header for web services

    I am encountering issues trying to pass the userid and password in the SOAP header when consuming a 3rd party web service.  Rostewitz posted something similiar but I don't know how to type iv_xml.  Any help would be greatly appreciated.
    Thank you,
    jpina

    It helps to post a link to a thread when you refer to it.  If you are trying to implement that solution though, you can look at the parameter of the corresponding method being called.  The parameter has type 'SIMPLE' which means that it is compatible with all of the predefined elementary ABAP types.  In this case, you should use 'STRING'.

  • Calling A Secured webservice using Username and password in the Soap header

    I want to call a secured webservice.
    The Username and password should be sent with the payload in the SOAP Header
    as
    <wsse:Security S:mustunderstand="0" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    <wsse:UsernameToken wsu:Id="SecurityToken-XXXXXXXXXXXXXXXXXXXXXXXXX" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <wsse:Username>uname</wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">pwd</wsse:Password>
    </wsse:UsernameToken>
    </wsse:Security>
    Can you please send me the steps?
    I tried with giving the username and password under Service Account.
    I tried to create a wspolicy under business service. But nothing works...
    Please help me at the earliest.
    Also please give me steps in sequence.

    Now i made sure that the endpoint is available!
    Now am getting this error:
    <soapenv:Fault>
    <faultcode>soapenv:Server</faultcode>
    <faultstring>BEA-380002: localhost1</faultstring>
    <detail>
    <con:fault xmlns:con="http://www.bea.com/wli/sb/context">
    <con:errorCode>BEA-380002</con:errorCode>
    <con:reason>localhost1</con:reason>
    <con:location>
    <con:node>RouteNode1</con:node>
    <con:path>request-pipeline</con:path>
    </con:location>
    </con:fault>
    </detail>
    </soapenv:Fault>
    Also in the invocation trace i can observe the following things:
    Under Invocation Trace:-
    ========================
         Receiving request =====> Initial Message context
         ===============================================
         under added header:-
         ==================
         <soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
         </soap:Header>
         under RouteNode1
    ================
         Route to "TargetMyService_BS"
    $header (request):-
    <soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    </soap:Header>
    Under Message Context changes:-
    *===============================*
    I can find this element also:-
    con:security>
    *<con:doOutboundWss>false</con:doOutboundWss>*
    *</con:security>*
    eventhough we enabled ws security, how the above tag can be false?
    I think its getting failed to populate the header with the required login credentials.
    The other doubt i have is:-
    =================
    I have chosen the service account type is static...is this right?

  • How to populate the fieldnames in the receiver file

    HI All,
    i got one requirement ie how to populate the fieldnames in the receiver file.
    please give the fast response.
    This is very urgent.
    thanks and regards
    sai

    Hi,
    Refer the below help link
    http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
    If you want to poulate the fieldnames same as of u r XML strucutue in the receiver file give like
    Record.addHeaderLine --- 1
    If you want to populate Header FieldNames as you own, give like
    Record.addHeaderLine --- 3 and add one more parameter
    Record.headerLine -- give the field names how you want to populate by using the  , 'comma' separator.
    Cheers
    Veera

  • Webservice security: manipulating the SOAP Header

    Hi all,
    I need to call a web service for which the following XWSS security policy is specified:
    <xwss:SecurityConfiguration dumpMessages="false" xmlns:xwss="http://java.sun.com/xml/ns/xwss/config">
    <xwss:RequireUsernameToken passwordDigestRequired="true" nonceRequired="true"/>
    </xwss:SecurityConfiguration>
    Looking at the BPEL Admin guide, I tried to add the following to the bpel.xml file:
    <property name="wsseOASIS2004Compliant">true</property>
    <property name="wsseHeaders">credentials</property>
    <property name="wsseUsername">username</property>
    <property name="wssePassword">digestedPassword</property>
    I tried to encrypt the password using either Base64 or sha1. In any case, the following error is returned:
    com.sun.xml.wss.XWSSecurityException: Receiver Requirement for Digested Password has not been met
    Apparently, the following header format has to be constructed:
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
    <SOAP-ENV:Header>
    <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
    SOAP-ENV:mustUnderstand="1">
    <wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
    wsu:Id="XWSSGID-11553010711772067303919">
    <wsse:Username>username</wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">digestedPassword</wsse:Password>
    <wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">aNonce</wsse:Nonce>
    <wsu:Created>2006-08-11T12:57:54Z</wsu:Created>
    </wsse:UsernameToken>
    </wsse:Security>
    </SOAP-ENV:Header>
    <SOAP-ENV:Body>
    theBody
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    How can I achieve that using BPEL Designer (using 10.1.2.1.0)?
    E.g. are there ways to directly influence the SOAP Header?
    Thanks.
    Best regards, Sjoerd

    More info:
    By specifying the header properties in the bpel.xml BPEL generates the following header data in the SOAP message (obtained using obtunnel):
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Header>
    <wsse:Security soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
    soapenv:mustUnderstand="1"
    xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    <wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <wsse:Username>username</wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">clearTextPassword</wsse:Password>
    </wsse:UsernameToken>
    </wsse:Security>
    </soapenv:Header>
    <soapenv:Body>
    theBody
    </soapenv:Body>
    </soapenv:Envelope>
    As you can see it uses the #PasswordText which indicates the use of a cleartext password.
    Thus the question remains: how to get the Nonce, the CreationTime and the PasswordDigest in the SOAP Header of the message (BPEL 10.1.2.1.0)?
    Thanks, Sjoerd

  • How to Capture Runtime SOAP Header in ABAP Webservice

    Hi All,
    I have created a WebService from a ABAP Function Module, and an external (Java Based) system is able consume to it. But while making the call, the external System enriches the SOAP header with certain values, and I need to capture these values in ABAP Function Module.
    How can read the enriched SOAP Header in my ABAP Function Module? is there any Class/Function Module which I can call to get the Runtime SOAP-HEADER or is the runtime SOAP-header available in one of the structures similar to SYST?
    Thanks,
    Ganesh

    Hi Ganesh,
    Please go through this link.
    http://www.sapag.co.in/SAP-XI-SOAP-Adapter-FAQ'S.html
    I think this would be helpful for you..
    Reward points if useful,
    Swamy Kunche

  • Using Message ID in the SOAP header (Sender)

    Hi Experts,
    The scenario is SOAP to IDoc.
    We have requirement to insert the Message ID in the SOAP header for avoiding duplicate messages from the SOAP client.
    Please note SOAP client is unable to support URL parameter, so we have to use Message ID in the SOAP header.
    So please suggest how to insert the Message ID in the SOAP header (WSDL) , and do we need to implement any mapping to retrieve the Message ID value from the SOAP header  - to create a PI message.
    Thanks in advance.
    MK

    But I want to know how we update the WSDL with the required Feild(messageID).
    I dont think you can update the wsdl url to include the messageID field...if you notice the other fields in the wsdl you will find all are static...however your messageID will be dynamic.....so just ask the SOAP client application to append the MessageId field and send the message.....at runtime the message id will be extracted by PI......did you test the scenario?...if no then test it once so that if there is an error we will come to know...
    Regards,
    Abhishek.

  • Adding element RelatesTo to the soap header

    Hi All,
    I need to replace wsa05:MessageID element in the soap header with the following value
    <wsa05:MessageID>fn-bea:uuid()</wsa05:MessageID>
    <wsa05:RelatesTo>$header/wsa05:MessageID/text()</wsa05:RelatesTo>
    How would I do that in OSB proxy service?

    You may use Insert or Assign or Replace action -
    http://download.oracle.com/docs/cd/E17904_01/doc.1111/e15867/proxy_actions.htm#CIHEFDFB
    Regards,
    Anuj

  • How to populate the time component of a cube?

    We have a question regarding how to populate the time component of a cube. Let me explain:
    We are using OWB 10gR2. We have created a cube with several dimensions. We are now building the mapping to load the cube. The cube operator has two columns for every dimension (e.g., "customer" and "customer_id" for the "customer" dimension).
    We understand that, in this case, "customer_id" stands for the dimension business key, so we create an arrow from the business key in the source table to the "customer_id" column in the cube operator.
    So far so good. The mapping works all right, and the cube is loaded correctly.
    Now we need to do the same for the time dimension. We have already created the time dimension and we have loaded it. We have also included it in the cube, so now we have two new columns in it: "time_day_code" and "time", both NUMBER data type.
    We have the "sale_date" column (DATE data type), in the source system and, of course, now we want to populate the date column in the cube. We suppose that, somehow, we have to translate the "sale_date" field into the numeric column of the surrogate key of the time dimension. How should do we do this? I suppose that OWB must do the translation for us, just as it does for the other dimensions, but how? We have been looking into the manuals, and we have found no explanation on how to go about this.
    Any help would be appreciated.
    Best regards
    Juan Algaba

    Hi Juan
    You are right this should have been in the manuals, checked and there is only a brief mention (Using a Time Dimension in a Cube Mapping section)
    The identifier format should have been documented for each level and will involve creating the formatted attribute for input to the cube operator's time dimension reference attribute.
    The time dimension business keys are stored as follows;
    Day Level - YYYYMMDD
    Month Level - YYYYMM
    Week Level - YYYYWW
    Quarter - YYYYQ
    Year - YYYY
    If you have a source that has a SQL date datatype for example and want to construct the key for a cube's time dimension at the day level something like the following expression can be used to construct the time reference from a SQL date...
    to_number(to_char( time_key, 'YYYYMMDD'))
    The result of this expression can be used as input to the cube's time dimension attribute.
    Cheers
    David

  • How to populate the field Discount Percent (DIS) in the outbound S1ORDEXC?

    Hello all,
    I am working with the Spec2000 to send out the IDOC S1ORDEXC.
    Does anyone know how to populate the field Discount Percent (DIS)?
    This field length of Discount Percent is 2 characters, but our customer discount in the Princing Conditions (Sales Order) is longer than 2 characters (ex:  7.500-%)
    Thank you

    Hello Thuan
    I guess you are working with IS- ADEC and SPEC 2000. I am not an expert on this but leave you some hints from OSS notes I came across.
    It appears like Discount Percent - DIS and Procurement Discount Percent -PDP are complementary and mutually exclusive. If one exists, the other need not.
    Looks like DIS is computed as (100-PDP)/100 and it is just a 2- integer data (as in 20 Percent). It is a kind of multiplier (Factor), example if  PDP discount is 10 percent, then DIS (Factor) is 0.9 and so  final (net) price after discount = Price*0.9.
    " If the discount comes in the S1BOOKED inbound into SD in the field DIS, then the discount has to be sent back in the DIS field .. if it came in the PDP field then it has to be sent back in the PDP field. If there was no discount in the incoming IDoc, then the discount has to be filled in the PDP if there was a change in the discount".
    KDATE in SPEC 2000 file maps to DIS and KPERC to PDP.
    PDP has 4 characters and per OSS note 440380, the point is ignored meaning you can work with 1225 instead of 12.25.
    So may be you can work with PDP?
    OSS notes: Apply to older releases but may still be applicable conceptually speaking.
    456153 - S1ORDEXC does not send out Discount
    440380 - PDP has only 4 characters in the SPEC IDoc instead of 5
    596042 - Discount percent DIS not considered e processing S1ORDEXC
    698668 - Incorrect calculation of unit price for PO item by S1ORDEXC
    Let me know you final findings.

  • How to populate the Zfield in info cube

    Dear All,
    This the data in the infocube 0sd_c03
    0material          0sold_to          Truck No          Zfield Need to update
    3000          TESTING          2199          1
    HSD BS II          OMC          2198          1
    HSD BS II          TESTING          2201          3
    3000          TESTING          2201          3
    HSD BS II          OMC          2200          2
    3000          TESTING          2200          2
    I need the logic to be build is
    For one Truck no, if sold to and material are unique then i need to update a flag (Zfield) as 1
    For one Truck no, if sold to is one and for 2 different materials then i need to update the flag (Zfield) as 2
    For one Truck no, if sold to are 2 and for 2 different materials then i need to update the flag (Zfield) as 3
    is it possible to do if so please let me know how to populate the same. please give me some idea about the coding
    if you have any doubts please ask
    regards
    venu

    Hi Venu,
    You can use Virtual Characteristics are characteristics whose values will be derived during query time.
    0INFOPROV will be found in data package dimension.
    Check below link:
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/e051fda8-71a9-2a10-ac9e-8d17414a8c8c&overridelayout=true
    Virtual characteristic
    Regards
    Chandra

Maybe you are looking for

  • Windows Vista installation ERROR

    System Specs: Dell Inspiron 1545 4GB RAM Intel Core 2 Duo @ 2.0Ghz I recently purchased a new HDD, a WD Scorpio Black WD3200BEKT, for my computer, and i am unable to install Vista.  I have a green Vista Home Basic 32bit reinstallation DVD, and the in

  • No audio with MLS Direct Kick package

    For some reason, there's is no audio with the MLS Direct Kick package tonight.  After spending a fruitless hour on the phone with Fios tech support, their only solution was to dispatch a technician to my house which didn't make any sense to me since

  • Query regarding tables in adf

    Hi, I am new to ADF.Last day I was experimenting with ADF tables.I've created an entity and a view object.I have also created an application module.I've written a custom method in application module which returns all the rows for a view.Then ,I creat

  • Simple non repeat randomiser

    i have found a couple of posts on this forum that discuss various arrays, i'm not a programmer as such so dont understand ****.... basically i would like to replace my existing code loadMovieNum("1.swf",1); with a randomiser that will load at a rando

  • Why does my page look great in design view and to the left in live view?

    I just created a new page using a fluid grid layout and in "design" view it looks great but in "live" view or on a browser preview the wording all goes to the left.  What I am doing wrong?  I also have another question which may relate to the first.