ESB and Stateful web services

Folks,
I’ve got two web services that are called in succession. The first web service performs a search and caches the results on the server, returning only some basic information about how many results were found (in the payload) and a session id (as an attribute in a HTTP header). The second service is called afterwards, passing some page request information (in payload) and the session id (in the HTTP header). The session id is used to find the appropriate search results and return them lazily (based the given page request information).
The web service requests are done through ESB and OWSM. My problem, however, is that according to the ESB developer’s guide (http://download-west.oracle.com/docs/cd/B31017_01/integrate.1013/b28211.pdf , page 5-29, ‘Limitations of ESB Header Support’) ESB is not capable of setting header attributes (at least not SOAP header attributes).
Is it possible to use stateful web services with the ESB? If so, how is the SessionID handled on the ESB and how is it correlated with the clients of the ESB who are getting the results back from this stateful web service?
Thanks in advance,
Joseph

Dave,
We have invoked the two services mentioned above in four different manners using Java code.
1. We are invoking the services through ESB with no success. The HTTP header (set-cookie) never makes it back.
2. We are invoking the services through Web Services Manager (the services are registered directly with OWSM) with no success. The HTTP header (set-cookie) never makes it back.
3. We are invoking the services through Web Services Manager (with ESB providing a wrapper for the services) with no success. The HTTP header never (set-cookie) makes it back.
4. Invoking the services directly (no OWSM, no ESB). This method is successful. HTTP headers are being exchanged without incident.
We are using Ethereal to check out the traffic going back and forth so we can see the SOAP headers getting propagated back and forth as you had mentioned. The problem is that the HTTP headers (as mentioned in my first posting) containing the session information are getting dropped when using ESB or Web Services Manager.
Any suggestions?
Thanks,
Joseph

Similar Messages

  • ESB and Secured Web Service strange response

    Hi guys,
    We are facing strange response from ESB when we try to talk to a Secured Siebel service. Credentials are passed useing SOAP header, and in test case of not including any header at all.
    1-First try will return error, bad user name password
    2-Second or third try may even return actually results from Siebel service (and header is not included at all). I tested using SOAPUI tool.
    3-But If I test Siebel Service directly things go fine.
    Question: Is there some thing like a caching of SOAP header in ESB, if not an idea on how can after giving first fault second try right after that returns query results (from siebel service).
    any helps apperciated.
    thanks

    there shouldn't much difference in the time for the response ..., also when you are calling the secured web service from another BPEL, make sure you don't consider the time of the calling process ( i mean that BPEL ). you just try calling the secured web service from the EM console if it is a SOA composite. do you see any messages in the log files ? the procedure you followed is correct only, confirm here., i have posted a similar solution long back..
    Re: Creating a partnerlink  from a secure webservice
    Thanks,
    N

  • Consuming a stateful web service

    We created and deployed a stateful web service(mail service) in J2EE. It is tested working fine for J2EE consumer. Now we need to create a client from SAP WebAs (abap side). We generated the proxy with logical port, having set those "State Management" and "Session Oriented-communication" features, which I believe supposed to be stateful.
    But the program crashed at the second time I call any method in the client proxy, for example, after "CALL METHOD mail_proxy->open_mail_session" to open a mail session, the "CALL METHOD mail_proxy->open_mail_store" throws an exception: "ICF Error when receiving the response: HTTP COMMUNICATION FAILURE".  It doesn’t matter which method  I used, it crashed on the second one any way. If I move the second method to the first call, the method will work fine but still crash on the 2nd called method.
    I need more information about how to make the client proxy and logical port working with a stateful web service.
    I will appreciate any hint, reference or suggestion!

    Hi,
    I am also creating a stateful web service for a standalone java client..
    Do we need to set the SESSION_MAINTAIN_PROPERTY on the client stub.It gives me a remote exception once I use this.Dont know how this web service keeps track of session..Pls advice
    Shashank

  • Consuming stateful web service via ABAP proxy

    Hi all,
    I´ve got the following scenario. I´ve a ABAP proxy generated based on a WSDL file. The provider is a WebService provided by a tomcat server. (no PI etc. as middleware). The problem i´ve now is that the webservice is stateful so I need a stateful communication between my ABAP report (client) and the Web Service.
    I´ve already found the possibiliy to switch on the feature "Session-Oriented Communication" on "Preconfiguration Tab" of the ABAP Proxy Screen. But unfortunately it´s not working.
    Anybody knows whether general system settings has to be changed for this. Or anybody has other tips.
    I´m currentliy working on the SAP Discovery System v3 which is a Netweaver 7.0.
    Many thanks in advance for your answers,
    Andy

    Marcelo  Almeida wrote:
    > You can use Logial port for it in LPCONFIG ( Transaction). See this examplo Below:
    >
    > TRY.
    >
    > CREATE OBJECT my_proxy
    > EXPORTING
    > logical_port_name = 'LP01'.
    > CATCH cx_ai_system_fault.
    > ENDTRY.
    >
    > TRY.
    > input-airline_id = p_carrid.
    > input-connection_id = p_connid.
    > input-flight_date = p_fldate.
    >
    > CALL METHOD my_proxy->flight_get_detail
    > EXPORTING
    > input = input
    > IMPORTING
    > output = output.
    > CATCH cx_ai_system_fault.
    > CATCH cx_ai_application_fault.
    > ENTRY.
    >
    > Its necessary create a connection in SM59 (type H) and setting in the call parameters logical port (LPCONFIG).
    Hi,
    thanks for your answer. It´s working!
    Cheers,
    Andy

  • Stateful web service implementation in Flex 2

    Hello Gurus,
    We are trying to invoke a web service located on a remote
    server using MXML to create a purchase order. One of the
    requirements is that we pass a cookie from our end to this web
    service for authentication and session management purposes. Can
    anyone throw some pointers on passing cookie information to
    webservices from MXML or ActionScript?
    A little bit of research resulted in the following link:
    http://livedocs.adobe.com/livecycle/es/sdkHelp/programmer/lcds/wwhelp/wwhimpl/common/html/ wwhelp.htm?context=LiveDocs_Parts&file=rpc_26.html
    An extract from the above document states the following:
    "Stateful web services
    Flex uses Java server sessions to maintain the state of web
    service endpoints that use cookies to store session information.
    But unfortunately there are no examples on how to pass the
    cookie information itself. Any pointers are appreciated . Thanks
    much!

    This issue caused me much confusion and delay, so I hope that what I am about to say is correct.  When Flex calls a web service that requires a stateful connection, the web service "cookie" is stored in the browser.  Flash automatically attempts to access this cookie value, and returns it to the web service when additional web service operations are called.  The cookie value will be placed in the "Request Headers".
    A couple issues that gave me fits:
    1.  Safari browser on Mac had default "/preferences/Privacy/Block cookies" set to "From third parties and advertisers".  This was preventing the cookie from being sent.  I had to change this setting to "never".
    2.  I work inside the Flash API.  Testing my movie never passed the cookie value back, and I have not figured out how to do this when compiling for Flash Player.
         - NOTE: I am able to test compiling as an Adobe Air App just fine.  I did this to get my web service calls/parsing of returned info correct first.  Cookie issue and Cross Domain issues are not issues in Adobe Air, so I find this is a good place to get the web service working.  After working compiling as Adobe Air, switch to compile for Flash Player to fine tuning other issues.
    3. Cross Domain issues.  Lots of posts on this.  Pay close attention.
    Thanks!

  • SuperWebservice supporting stateful Web Service

    Acelet (http://www.acelet.com) has released a new version of Super with SuperWebservice supporting stateful Web service and SuperLogging combining traditional logging and LimpidLog. LimpidLog is a revolutionary logging: there is no need to hard-code logging statement. LimpidLog is an open source program.

    When building the service, there is an option to deploy a stateful service: check the stateful checkbox, in the step 2 of the wizard - Methods definition.
    On the client side, you will have to enable HTTP based cookie, so that the client remember the JSESSION cookie.
    Hope this helps,
    Eric

  • SSO and ABAP Web Services

    I am opening this thread on behalf of my colleague Bala regarding SSO and ABAP Web Services.
    We have gone through single sign on options and found several options are available within 5.0.
    We would like to know the options available for SAP ABAP web services access from a Non-SAP system with user authorization but without Portal/ITS installation.
    Also I would like to avoid any hard coding of user id in Non-SAP system .
    Could you provide any information.
    Thanks,
    Bala

    We have gone through single sign on options and found several options are available within 5.0.
    Tell me what are the several options and what is your Non-SAP system?
    without Portal/ITS installation.
    ITS is now an integral part of ECC 5.0 system. So would not need a seperate installation, unlike earlier versions.
    AB

  • Need help calling stateful web service from BPEL 10.1.3.1

    I found the tutorial located at http://www.oracle.com/technology/products/ias/bpel/htdocs/callingstatefulwsfrombpel.html which talks about how to call a stateful web service, it is also mentioned on Clemens Utschig's SOA blog.
    The problem is that the code for the handlers will not compile as given under 10.1.3.1 -- it seems that the method signature for the invoke method has changed in the interface com.collaxa.cube.ws.HeaderHandler
    Has anyone gotten this to work in 10.1.3.1 or can anyone give me a tip on how to call a stateful web service in a different manner from BPEL?
    Thanks!

    Hi,
    'm trying to call a username/password secured service,
    with
    <property name="basicHeaders">credentials</property>
    <property name="basicUsername">username</property>
    <property name="basicPassword">password</property>
    But getting the following exception,
    FAIL :: Cause : :exception on JaxRpc invoke: HTTP transport error: javax.xml.soap.SOAPException: java.security.PrivilegedActionException: javax.xml.soap.SOAPException: Message send failed: Bad Set-Cookie header: JSESSIONID_twos=Lf1VTn7Q5KG5PhtJlGjTTM0nhhJ5FLyR51zZJLLBGfVs04VY8fmv!-728969536; domain=wosdev; path=/; secure=true, WLAUTHCOOKIE_JSESSIONID_btwosfportal=ZHfuVwF5kudqtHEoR6Ap; path=/; secure Expected ';' or ',' at position 131:
    Kindly help!
    Thanks,
    ChandraMouli
    Edited by: user13110451 on Sep 8, 2011 5:52 AM

  • Front End internal and external web services

    Hi all,
    Can someone explain the purpose of internal and external web services URL in front end server. what does it do and what is it used for? and why the external traffic goes directly to it and not through reverse proxy?
    Thanks,

    They're for multiple purposes.  Address books, autodiscovery, meeting urls, mobile clients, etc.  There are two because they respond slightly differently based on whether the client is internal or external.  External traffic should always reach
    it through a reverse proxy, that reverse proxy should proxy traffic received on port 443 to port 4443 on your front end pool.
    Please remember, if you see a post that helped you please click "Vote As Helpful" and if it answered your question please click "Mark As Answer".
    SWC Unified Communications
    This forum post is based upon my personal experience and does not necessarily reflect the opinion or view of Microsoft, its employees, or other MVPs.

  • Standard Web Service and Customized Web Services with or without PI?

    Hi All,
    I want to know how I can use Standard Web Service available in SAP  and customized Web Services
    without PI Interface?
    And what is the best practice to expose services ,via PI Interface or directly?
    Thanks in advance!!
    Pushkar

    This is purely based on your requirement. If you use PI middleware to expose web services, you get standard functionalities such as certificate authentication, logging, message reprocessing for the failed messages etc.  If your requirement is so simple, then you might not need PI. In this case you can develop simple webdynpro for abap program to create webservice and expose the webservice in ECC webservice runtime. You can let anyone to consume within your network. other ways like exposing BAPI/RFC as webservice.  I would recommend going with PI.

  • Timestamp Error when calling Encrypt and Signed Web Service

    Hello,
    I maked one Web Service in the Oracle Service Bus 10gR3 that supports Encryption and Sign, basically inserting (manually) this on WSDL Contract:
    This two namespaces:
    xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
    xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
    This Declarations:
    <wsp:UsingPolicy Required="true"/>
    <input>
    <wsp:Policy>
    <wsp:PolicyReference URI="policy:Encrypt.xml"/>
    </wsp:Policy>
    <soap:body use="literal" />
    </input>
    <wsp:Policy>
    <wsp:PolicyReference URI="policy:Sign.xml"/>
    </wsp:Policy>
    The above declarations was inserted in the correct points inside the WSDL Contract and the Web Service is working correctly.
    The Problem is related to Sign.xml declaration, when i insert this declaration:
    <wsp:Policy>
    <wsp:PolicyReference URI="policy:Sign.xml"/>
    </wsp:Policy>
    Then, the Web Service shows an error. Following the Request and Resonse (That shows the error):
    Request:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ger="http://www.abc.com.br/Service">
    <soapenv:Header/>
    <soapenv:Body>
    <ger:gerarHashSenha>
    <arg0>123456</arg0>
    </ger:gerarHashSenha>
    </soapenv:Body>
    </soapenv:Envelope>
    Response:
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <env:Header/>
    <env:Body>
    <env:Fault>
    <faultcode>env:Server</faultcode>
    *<faultstring>Can not retrieve header: {http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}Timestamp</faultstring>*
    </env:Fault>
    </env:Body>
    </env:Envelope>
    Observation: I was invoking the WebService using the soapUI Tool.
    I Tryed change the request to bellow code, but doesn't work:
    <soapenv:Envelope xmlns:ger="http://www.abc.com.br/Service" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <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">
    <wsu:Timestamp wsu:Id="Timestamp-447" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <wsu:Created>2010-05-27T21:40:55.667Z</wsu:Created>
    <wsu:Expires>2010-05-27T21:41:55.667Z</wsu:Expires>
    </wsu:Timestamp>
    </wsse:Security>
    </soapenv:Header>
    <soapenv:Body>
    <ger:gerarHashSenha>
    <arg0>123456</arg0>
    </ger:gerarHashSenha>
    </soapenv:Body>
    </soapenv:Envelope>
    Thanks.
    Victor Jabur.

    someone has any idea ?
    Thanks

  • EBS11i to provide Web services and receive Web services

    Our corporate direction is to have all major systems internal has to communicate to each other using web services. No more using pl/sql, dblink, FTP to communicate.
    we are using EBS 11i.
    1) Is that possible to have our EBS 11i able to receive web service call and make web service call to other systems?
    2) Will 'Oracle AS Adapter for Oracle Applications' is the solution for this? is this adapter install at EBS box to receive web service call and make web service call to other systems?

    Hi,
    WebDynPro Java/ABAP are primarily User Interface technologies. Webservices are faceless (without UI ) components that provide certain functionality. Using UI technologies like WebDynPro Java/ABAP etc, we can build a face( UI ) to the webservices.
    DnyPro itself means a screen & WebDynPro is for building web based applciations.
    Hope this resolves your question.
    Well, if you still want to use it as provider & if you have an existing web-service, the way to do it is, Right click on your WebDynPro ABAP component & select CREATE->Service Call. Build a Custom Controller or use the Component Controller to get the service using service type = Webservice proxy for your webservice. You can use this Component as a Used component in any other webdynpro components & use this to access webservices.
    Thanks,
    Phani
    Edited by: Phani Rajesh Mullapudi on Oct 8, 2009 10:41 PM

  • Lync control panel and internal web Services

    Hi,
    In our Lync 2013 deployment for web services we have set override  FQDN for internal Web Services asialyncpool.corp.contoso.com and External web services as web.contoso.com. The Control Panel URL has been set to https://admin.contoso.com
    When i launch Control panel, in the IE https://admin.contoso.com the control panel opens and but the url get changed to internal web services ie sialyncpool.corp.contoso.com. When i enter https://admin.contoso.com/cscp in the IE it ask for logon
    credentials and doen't accept the credentials at all, how many times i may try.

    Thanks for the response.
    https://admin.contoso.com,
    it will redirect to the URL of: https://asialyncpool.corp.contoso.com/cscp -
    This is exactly what is happening.
    When i use - https://asialyncpool.corp.contoso.com/cscp,
    it doesn't accept the credentials, it keep asking for right credentials, when i use Lync control panel, it does accept the credentials.

  • How to Create and Deploy Web Services Using Oracle 9i JDeveloper

    Hi,
    My Question is how to create and deploy Web Services using Oracle 9i JDeveloper.Anybody please give me a detailed Reply.Please Reply to [email protected]
    Hopr to Hear From you,
    Regards,
    G Sreekumar

    You could use datasources. You should do this in your BC4J Configuration. Then when deploying your applicaiton use the command -installDataSource (from admin.jar) to create the right datasource.
    You could probably use the name of your connection + "DS" so you can also use it locally in JDeveloper as JDev seesm to create this automaticly for your Connections.

  • ANN: Contest open, new tutorial and new Web services software

    The OTN Web Services Challenge is now open and accepting entries. Read the details, rules and requirements at:
    http://otn.oracle.com/tech/webservices/htdocs/challenge/content.html
    You could win a Dell Notebook worth USD$5,000 :-) First 500 real entries (that is one with source code and works) will get an Oracle Press book (my understanding is that it is one on Oracle9iAS).
    There are also a number of new things also available on the OTN Web Services Center:
    - A new Oracle9i Reports tutorial at:
    http://otn.oracle.com/tech/webservices/htdocs/series/reports/content.html
    - The Oracle9iAS Containers for J2EE Developer Preview (9.0.3) now supports document style Web Services and asynchronous Web services. Read all the content off the main page in the center:
    http://otn.oracle.com/tech/webservices/
    - A new paper talking about the Java XML Pack from Sun which Oracle is iterating its Oracle9iAS implementation towards:
    http://otn.oracle.com/tech/webservices/htdocs/standards/jax.html
    Mike.

    Currently the patch is only available on MetaLink (metalink.oracle.com) which requires a support account with Oracle. The patch number is 2367149 - see this post for instructions of how to get it from MetaLink:
    Re: Database or Client Level?
    Mike.

Maybe you are looking for

  • HT204655 I upgraded to OS X and now my iPhoto application is gone

    I recently upgraded to OS X (Yosemite) and my iPhoto application/library is gone.  When I click on "application", I get a message that says I have to download the latest version for free from the Mac App Store, but when I go there, it says that the i

  • How to use dynamic time series in formula

    I have Time dimension with active Dynamic Time Series for Y-T-D. I'd like to use it in member formula - e.g. IF (@ISMBR("Y-T-D(Aug)")) - but this doesn't work as I get error message Unknown variable or member name. Any idea how to work with dynamic t

  • WAAS-4.1.5-b25 software?

    I'm in the process of adding a new accelerator into our setup, today we use WAAS-4.1.5-b25 software version, but the "new" hardware have 4.1.3b. I would like to just upgrade the new hardware to the same version we have in our setup, but cant find the

  • Flashing Question Mark Icon

    Hi All, My iMac will not start up. I am getting a flashing question mark folder icon. What should I try? imac G5 20; 1gig RAM; 160HD; airport; bluetooth keyboard & mouse; bose companion 3 speakers   Mac OS X (10.4.8)  

  • Help required "Forming Packets od data "

    Hello i need help in forming packets from data which is read from aport and transfer those packets to the another server. can any one one help me ,which java class can be used for this.