Is there a way to get SOAP header in bpel?

Hi,
My web service returns a SessionID contained in the SOAP header. In Oracle PM, is there a way I could extract the SOAP header, or manipulate the SOAP header when invoking the web services? Any information would be appreciated.
Thanks!
Feng

Edwin,
I was trying your second approach, which utilizes the bpel extension to hold the header info, but with no luck.
The provided sample (Salesforce Flow) works well, and I can see the SOAP header using TCPMonitor. Then I created a simple echo service (using bpel) to replace the Salesforce.com Enterprise Web Services, and invoke the echo service from a bpel process with the same bpel extension. However, no header was sent out.
I guess there are something I was missing. Attached please find the wsdl file of the echo service, as well as the bpel files. Could you give me some idea what I did wrong? Or do you have any documentation about the bpel extensions?
Thanks a lot for the good support!
Feng
echo.wsdl
<?xml version="1.0"?>
<definitions name="echo"
targetNamespace="http://acm.org/samples"
xmlns:tns="http://acm.org/samples"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
>
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
TYPE DEFINITION - List of types participating in this BPEL process
The BPEL Designer will generate default request and response types
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://acm.org/samples"
xmlns="http://www.w3.org/2001/XMLSchema">
<element name="echoRequest">
<complexType>
<sequence>
<element name="input" type="string"/>
</sequence>
</complexType>
</element>
<element name="echoResponse">
<complexType>
<sequence>
<element name="result" type="string"/>
</sequence>
</complexType>
</element>
<!-- Header Elements -->
<element name="SessionHeader">
<complexType>
<sequence>
<element name="sessionId" type="xsd:string"/>
<element name="InvokeID" type="xsd:string"/>
</sequence>
</complexType>
</element>
<element name="QueryOptions">
<complexType>
<sequence>
<element name="batchSize" type="xsd:int" />
</sequence>
</complexType>
</element>
<element name="SaveOptions">
<complexType>
<sequence>
<element name="autoAssign" type="xsd:boolean"/>
</sequence>
</complexType>
</element>
</schema>
</types>
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MESSAGE TYPE DEFINITION - Definition of the message types used as
part of the port type defintions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<message name="echoRequestMessage">
<part name="payload" element="tns:echoRequest"/>
</message>
<message name="echoResponseMessage">
<part name="payload" element="tns:echoResponse"/>
</message>
<!-- Header Message -->
<message name="Header">
<part element="tns:SessionHeader" name="SessionHeader"/>
<part element="tns:SaveOptions" name="SaveOptions"/>
<part element="tns:QueryOptions" name="QueryOptions"/>
</message>
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PORT TYPE DEFINITION - A port type groups a set of operations into
a logical service unit.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<!-- portType implemented by the echo BPEL process -->
<portType name="echo">
<operation name="process">
<input message="tns:echoRequestMessage" />
<output message="tns:echoResponseMessage"/>
</operation>
</portType>
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PARTNER LINK TYPE DEFINITION
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<plnk:partnerLinkType name="echo">
<plnk:role name="echoProvider">
<plnk:portType name="tns:echo"/>
</plnk:role>
</plnk:partnerLinkType>
</definitions>
echo.bpel
<!-- echo BPEL Process [Generated by the Oracle BPEL Designer] -->
<process name="echo" targetNamespace="http://acm.org/samples" suppressJoinFailure="yes" xmlns:tns="http://acm.org/samples" xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/" xmlns:bpelx="http://schemas.oracle.com/bpel/extension" xmlns:ora="http://schemas.oracle.com/xpath/extension" xmlns:cx="http://schemas.collaxa.com/xpath/extension">
     <!-- ================================================================= -->
     <!-- PARTNERLINKS -->
     <!-- List of services participating in this BPEL process -->
     <!-- ================================================================= -->
     <partnerLinks>
          <!-- The 'client' role represents the requester of this service. -->
          <partnerLink name="client" partnerLinkType="tns:echo" myRole="echoProvider"/>
     </partnerLinks>
     <!-- ================================================================= -->
     <!-- VARIABLES -->
     <!-- List of messages and XML documents used within this BPEL process -->
     <!-- ================================================================= -->
     <variables>
          <!-- Reference to the message passed as input during initiation -->
          <variable name="input" messageType="tns:echoRequestMessage"/>
          <!--
Reference to the message that will be returned to the requester
-->
          <variable name="output" messageType="tns:echoResponseMessage"/>
     </variables>
     <!-- ================================================================= -->
     <!-- ORCHESTRATION LOGIC -->
     <!-- Set of activities coordinating the flow of messages across the -->
     <!-- services integrated within this business process -->
     <!-- ================================================================= -->
     <sequence name="main">
          <!-- Receive input from requester.
Note: This maps to operation defined in echo.wsdl
-->
          <receive name="receiveInput" partnerLink="client" portType="tns:echo" operation="process" variable="input" createInstance="yes"/>
          <!-- Generate reply to synchronous request -->
          <assign>
               <copy>
                    <from expression="concat('echo: ', bpws:getVariableData(&quot;input&quot;, &quot;payload&quot;, &quot;/tns:echoRequest/tns:input&quot;))">
                    </from>
                    <to variable="output" part="payload" query="/tns:echoResponse/tns:result"/>
               </copy>
          </assign>
          <reply name="replyOutput" partnerLink="client" portType="tns:echo" operation="process" variable="output"/>
     </sequence>
</process>
bpel process that invokes the echo service
<!-- testHeader6 BPEL Process [Generated by the Oracle BPEL Designer] -->
<process name="testHeader6" targetNamespace="http://acm.org/samples" suppressJoinFailure="yes" xmlns:tns="http://acm.org/samples" xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/" xmlns:bpelx="http://schemas.oracle.com/bpel/extension" xmlns:ora="http://schemas.oracle.com/xpath/extension" xmlns:cx="http://schemas.collaxa.com/xpath/extension">
     <!-- ================================================================= -->
     <!-- PARTNERLINKS -->
     <!-- List of services participating in this BPEL process -->
     <!-- ================================================================= -->
     <partnerLinks>
          <!-- The 'client' role represents the requester of this service. -->
          <partnerLink name="client" partnerLinkType="tns:testHeader6" myRole="testHeader6Provider"/>
          <partnerLink name="echo" partnerLinkType="tns:echo" partnerRole="echoProvider"/>
     </partnerLinks>
     <!-- ================================================================= -->
     <!-- VARIABLES -->
     <!-- List of messages and XML documents used within this BPEL process -->
     <!-- ================================================================= -->
     <variables>
          <!-- Reference to the message passed as input during initiation -->
          <variable name="input" messageType="tns:testHeader6RequestMessage"/>
          <!--
Reference to the message that will be returned to the requester
-->
          <variable name="output" messageType="tns:testHeader6ResponseMessage"/>
          <variable messageType="tns:echoRequestMessage" name="i2"/>
          <variable messageType="tns:echoResponseMessage" name="o2"/>
          <variable name="header" messageType="tns:Header"/>
     </variables>
     <!-- ================================================================= -->
     <!-- ORCHESTRATION LOGIC -->
     <!-- Set of activities coordinating the flow of messages across the -->
     <!-- services integrated within this business process -->
     <!-- ================================================================= -->
     <sequence name="main">
          <!-- Receive input from requester.
Note: This maps to operation defined in testHeader6.wsdl
-->
          <receive name="receiveInput" partnerLink="client" portType="tns:testHeader6" operation="process" variable="input" createInstance="yes"/>
          <!-- Generate reply to synchronous request -->
          <assign>
               <copy>
                    <from expression="12345">
                    </from>
                    <to variable="i2" part="payload" query="/tns:echoRequest/tns:input"/>
               </copy>
               <copy>
                    <from expression="1111">
                    </from>
                    <to variable="header" part="SessionHeader" query="/tns:SessionHeader/tns:sessionId"/>
               </copy>
          </assign>
          <invoke partnerLink="echo" portType="tns:echo" operation="process" inputVariable="i2" bpelx:inputHeaderVariable="header" outputVariable="o2"/>
          <reply name="replyOutput" partnerLink="client" portType="tns:testHeader6" operation="process" variable="output"/>
     </sequence>
</process>

Similar Messages

  • Any way to get HTTP header in web dynpro Java?

    Is there any way to get HTTP header in web dynpro java? This method gives me the params. Is params same as header? It doesn't have any way to retrieve header data. I am on NW 7.0.19
    WDProtocolAdapter.getProtocolAdapter().getRequestObject().getParameter("param");

    Dear Faraz,
    I'm afraid the code you've pasted is only to retrieve URL parameters.
    Have you tried this document to see if it offers any good hint:
    [http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b0446f5c-fcb9-2910-e082-88becbe3ddc9]
    Not sure if you can process the HTTP header with a WD4J.
    An alternative could be to develop some Portal component in plain JAVA working as a proxy to call your WD4J afterwards.
    That portal component would process your HTTP header and forward any parameter to your WD4J.
    But this is me just guessing.
    Kind Regards
    /Ricardo

  • Apart from using a DNS Service, is there a way of getting an Xserve to notify an administrator of a change of external IP address?

    I have an Xserve running 10.5.8 which is I want to notify me when its external IP address changes.
    Is there a way to get it to do this?

    Here is my finished solution using applescript.
    If it is of use to anyone else please feel free to use/improve it.
    global OLD_IP
    global Current_IP
    global IP_text
    set OLD_IP to ""
    set Current_IP to ""
    set Test_text to ""
    ---on run get the current external IP address & set it as the Base IP to compare to
    do shell script "curl -s checkip.dyndns.org"
    set Pub_IP to result
    set OLD_IP to Pub_IP as string
    ---show the address
    display dialog "IP is: " & return & OLD_IP giving up after 2
    on idle
        try
            set IP_Changed to false
            set Current_IP to ""
            ---get the current external IP address
            do shell script "curl -s checkip.dyndns.org"
            set Pub_IP to result
            set Current_IP to Pub_IP as string
            if Current_IP is equal to OLD_IP then
                set IP_Changed to false ---if it is the same then it hasn't changed (false)
            else
                set IP_Changed to true ---if it is different then it has changed (true)
            end if
            if IP_Changed is true then ---if there is a difference the email the change to administrator(s)
                set target_string to Current_IP as string
                set replacement_string_1 to "<html><head><title>Current IP Check</title></head><body>"
                set replacement_string_2 to "</body></html>"
                my replace_and_select(target_string, replacement_string_1, replacement_string_2) ---removes HTML coding
                tell application "Mail"
                    set Mail_to_1 to "[email protected]"
                    set Mail_from to "[email protected]"
                    set theName to "Administrator"
                    set theAddress to Mail_to_1
                    set theSubject to "Server Public IP Address"
                    set theBody to IP_text
                    set newMessage to make new outgoing message with properties {subject:theSubject, content:theBody & return & return}
                    tell newMessage
                        set visible to true
                        set sender to Mail_from
                        make new to recipient at end of to recipients with properties {name:theName, address:theAddress}
                        activate
                        send
                    end tell
                end tell
                set OLD_IP to Current_IP ---set Base IP to the new one ready for next test
            end if
        end try
        return 3600 ---wait one hour before repeating the test
    end idle
    on replace_and_select(target_string, replacement_string_1, replacement_string_2)
        set this_text to target_string as string
        set this_offset to the offset of the replacement_string_1 in this_text
        set this_offset_2 to the offset of the replacement_string_2 in this_text
        set this_offset_3 to this_offset + (length of the replacement_string_1)
        if this_offset is not 0 then
            set IP_text to items this_offset_3 thru (this_offset_2 - 1) of target_string as string
        end if
           return
    end replace_and_select

  • My files disappered from icloud drive. is there a way to get them back??

    Hi All,
    I'm using icloud drive for my files and everything was fine untill this morning. when I looked the drive I saw that most of my files was gone. I did not erase or move anything. is there a way to get them back???
    thanks...

    Export all your existing projects just in case and copy them onto your computer (might not be necessary but I don't have time to test it just now) then head into Settings > GarageBand > Reset GarageBand Settings which restores sound samples and the demo song.
    tt2

  • Uitableview grouped style-is there any way to get section background color

    hi all,
    So far i have tried myself and searched everywhere but didnt figured out that is there any way to get section background colors different for each sections in grouped style tableview.
    If anyone has tried something to get such thing would really be helpful to me.
    Thanks,
    C.P.

    Have you tried this? [http://stackoverflow.com/questions/813068/uitableview-change-section-header-co lor]

  • Is there a way to get more storage room on a 16

    I have recently bought an ipad air 16gb. I thought this would be perfect for traveling and that I could just download movies for me & my family to watch while on a plane or traveling in the car.  I have gone through and deleted most of the apps (games for my daughter and myself) that we probably won't use a lot.  I only have 4 movies downloaded and no music and I have 1 more movie I'd like to add.  However, when I try to load it, I get a message telling me that I don't have enough storage.  Is there any way to get some more storage without having to delete the purchased movies off as well.....please help!!

    iPhone, iPad, and iPod: Understanding capacity
    http://support.apple.com/kb/ht1867
    How much space is used by your Other? You may be able to reduce.
    How Do I Get Rid Of The “Other” Data Stored On My iPad Or iPhone?
    http://tinyurl.com/85w6xwn
    How to Remove “Other” Data from iPhone, iPad and iPod Touch
    http://www.igeeksblog.com/how-to-remove-other-data-from-iphone/
    With an iOS device, the “Other” space in iTunes is used to store things like documents, settings, caches, and a few other important items. If you sync lots of documents to apps like GoodReader, DropCopy, or anything else that reads external files, your storage use can skyrocket. With iOS 5/6/7, you can see exactly which applications are taking up the most space. Just head to Settings > General > Usage, and tap the button labeled Show All Apps. The storage section will show you the app and how much storage space it is taking up. Tap on the app name to get a description of the additional storage space being used by the app’s documents and data. You can remove the storage-hogging application and all of its data directly from this screen, or manually remove the data by opening the app. Some applications, especially those designed by Apple, will allow you to remove stored data by swiping from left to right on the item to reveal a Delete button.
    What is “Other” and What Can I Do About It?
    https://discussions.apple.com/docs/DOC-5142
    iPhone or iPad Ran Out of Storage Space? Here’s How to Make Space Available Quickly
    http://osxdaily.com/2012/06/02/iphone-ipad-ran-out-of-available-storage-space-ho w-to-fix-quick/
    6 Tips to Free Up Tons of Storage Space on iPad, iPhone, and iPod Touch
    http://osxdaily.com/2012/04/24/6-tips-free-up-storage-space-ipad-iphone-ipod-tou ch/
    Also,
    How to Clear Message/iMessage Cache on iPhone & iPad And Reclaim Lots of Free Space
    http://www.igeeksblog.com/how-to-clear-message-imessage-cache-on-iphone-ipad/
    What is Stored in iCloud and What is Not
    https://sites.google.com/site/appleclubfhs/support/advice-and-articles/what-is-s tored-in-icloud
     Cheers, Tom

  • Is there a way of getting a "schedule view" in iCal on a mac and on iPad in the same way you can get one on iPhone?

    IS there a way to get a schedule view of events on a busy day in iCal on the iPad 2 Air and on the Macbook Pro?  I can get this view on an iPhone.

    I am paranoid that some untrusted technician is going to make a copy of my music (11,000 tracks) or share some of my personal information (scanned copies of my birth certificate, passport, certificates, photos, etc.) on the web.
    If you put your info into the computer and hand it to another, you have to assume they will copy everything.
    Why are you putting scanned copies of valuable identity information into a computer than can be hacked, stolen, lost or compromised by a dirty tech?
    Have you lost your mind?
    Is there a way of finding out what activity has taken place whilst they've had it in their possession?
    No. The tech would just deny it if he did, or tell the truth which the answer would be "NO" in either case.
    The employer won't ask that sort of questions without solid proof, less they make a enemy of the employee and/or risk being sued for defamation of character.
    It's not like they bother to have a team of people watching over his shoulder that he doesn't stick a USB thumb drive of your data into his pocket to take home.
    I am paranoid that some untrusted technician is going to make a copy of my music (11,000 tracks)
    If it's iTunes music, it has your personal ID embedded into the song files. Most IT techs know this though.
    I appreciate any advice you guys can offer.
    Too late now, all you can do is not worry about it.
    Take your personal info out of the machine and if you need it, burn cd/dvd copies, a few USB thumb drives, Iron Keys or self encrypting external storage drives with key and/or keypad.

  • Can I put more than one user under one Apple ID account. I want to let other family members use imessage on their own Apple device. Or is there another way to get this end result?

    Can I put more than one user under one Apple ID account. I want to let other family members use imessage on their own Apple device. Or is there another way to get this end result?

    You can seach the net for solutions like this one http://appletvvpn.com/how-to-connect-apple-tv-2-to-vpn/ another idea is to use a PC as the control and fit that with a wireless card and set up a ad hoc wireless network that the Apple TV uses. 

  • Is there a way to get a log of the bluetooth devices my iphone has been connected to?   My Bluetooth car speaker phone was recently stolen from my car and appears to be on Craigslist.

    Is there any way to get a log of the bluetooth devices my Iphone has been connected to?  I recenly had my Bluetooth Jabra stolen from my car and now a simliar one is on Craigslist.  I'd like to give my connection log to the police before I go and see if my Iphone recognizes the device in question.  Any way to get any type of bluetooth device connection log out of my iphone?

    Your contacts should still be on whatever program you sync your iphone to (i.e. Outlook, address book).
    The iphone is not a stand alone device. It is designed to be synced with a computer. If you have not been syncing with a compatible program, then you are out of luck. Your contacts are not included in the back-up because it is meant to be synced with your computer.
    "Although iTunes backs up most of your iPhone and iPod touch settings, downloaded applications, and other information (Contacts, calendars, notes, images in the Camera Roll), your audio, video, and photo content are not included in the backup."
    http://support.apple.com/kb/HT1414

  • In previous versions of i Tunes you could highlight a song in your library and there would be a genious list on the right side of the screen showing songs like the one highlighted in the library. Now I do not get that list. Is there a way to get this back

    In previous versions of i Tunes I could highlight a song in my library and a genious list would show on the right side of the screen listing songs that were like the one highlighted. Now I do not get that list. Is there a way to get that back?

    Hi again Bob,
    I believe I've found the feature you were speaking about now. Information on the "In the Store" feature of iTunes can be found here:
    Apple - iTunes - Inside iTunes - Using In the Store from within your iTunes Library.
    http://www.apple.com/itunes/inside-itunes/2013/01/using-in-the-store-from-within -your-itunes-library.html
    Thanks for using the Apple Support Communities. Have a good one!
    -Braden

  • Is there a way to get a version of the Garage Band app that runs on version 5.1.1?  I have an iPad 1 and can't get any higher iOS.  The App store is telling me that Garage Band only runs on iOS 7.

    Is there a way to get a version of the Garage Band app that runs on version 5.1.1?  I have an iPad 1 and can't get any higher iOS.  The App store is telling me that Garage Band only runs on iOS 7.

    Unfortunately the answer is still no.

  • Is there a way to get iCal to put the time of each event on Monthly view without going in and editing each event?

    When I enter a new event on iCal with the time, it leaves the time off of the Monthly view and in order for me to glance at the times of the day's events I have to click on each event or go into the event and edit it again putting the time on, for it to show.  Is there a way to get it to show without doing this?

    Sorry.  Only after posting did I see that this question has been asked already and the answer given.  Please ignore this post.

  • Is there another way of getting apps from the appstore without putting your credit card number in, ive heard about the itunes gift card thing can anybody just give me more info about that and how i can buy free things free things from the appstorepls help

    Is there another way of getting apps from the appstore without putting your credit card number in, ive heard about the itunes gift card thing can anybody just give me more info about that and how i can buy free things free things from the appstore...pls help as im only a teenager and have no credit credit and my parents dont trust me with theres and they dont care about the fact that you can set up a password/.... PLEASE SOMEONE HELP I WILL BE SO GRATEFUL... And i would really like to get the iphone 4 but if there is no way of etting apps without your credit number then i would have to get a samsung galaxy s3 maybe ...

    You can set up an Apple ID without a credit card.
    Create iTunes Store account without credit card - Support - Apple - http://support.apple.com/kb/ht2534

  • Probably asked and answered a million times but my laptop died and my boyfriend and i are now sharing a computer when i went to back up my contacts i ended up with all of his! Is there a way to get them off and how do i prevent this from happening again?

    probably asked and answered a million times but laptop died and my boyfriend and i are now sharing a computer when i went to back up my contacts i ended up with all of his? Is there a way to get them off without deleting each one? Also how do i prevent this from happening again? can someone direct me to some info on multiple phones on one itunes i am lost.

    Hey there 79usma79!
    I have a couple of articles for you that can help you troubleshoot the issues you are seeing with iTunes on Windows XP. The first is a general troubleshooting article, which can be found right here:
    iTunes for Windows XP: Troubleshooting unexpected quits, freezes, or launch issues
    http://support.apple.com/kb/TS1421
    This article can help you find out if there are any conflicts between your copy of Windows XP and iTunes, and can tell you what to do if there are. Before going down the troubleshooting route though, you should take a look at this article, which can help you back up your entire iTunes library to an external hard drive, so if this issue is recurring, you will be able to restore from that backup and will not have to worry about losing your playlists or music again:
    iTunes: Back up your iTunes library by copying to an external hard drive
    http://support.apple.com/kb/HT1751
    Thanks for using the Apple Support Communities!
    Cheers,
    Braden

  • Is there a way to get the voice memos from my iPhone on to my pc?

    Is there a way to get the voice memos from my iPhone on to my pc?

    See http://www.tech-recipes.com/rx/6403/iphone-transfer-voice-memos-from-iphone-to-c omputer/.

Maybe you are looking for

  • Not able to download all of my music onto my ipod 5 after 8.2 update

    After updating my 5th gen ipod touch to 8.2 software I am not able to download all of my music from my itunes library. I have updated the software twice now and have restored and gone back to factory settings and have started over from scratch. Befor

  • Error while accessing station global in LabVIEW

    I am trying to access the teststand station global value in the LabVIEW using activex methods. If I am reading default station global (TS.LastUserName) i am able to read the value. However if i am trying to read the value of the string station global

  • The titler window does not open in CS5.5, help?

    I have had Cs5.5, student version for about 8 months now, I have never had a problem with the titler before and now it won't open. I have treid all the diffrent way's to open, and I get nothing. It will open the fist box where you type in the name of

  • How to get rid of stuck app?

    My niece downloaded Instagram to my iPad while she was visiting this summer.  After she left I removed it from my iPad (held down until wiggled clicked x).   Everything was fine until iOS 6 update when it appeared in my update list along with a numbe

  • Virtual share points - SMB - not working

    My colleague made some adjustments on our sharing over the weekend. To trouble shoot some performance issues he disabled automount on one of our xserves. Since then virtual share points in SMB no longer work. Users can access their folders with the p