4 Replies Latest reply: Aug 4, 2014 5:04 AM by AlexAnd RSS

    How to set time out property for Web Service Partner link in new version of SOA Suite, it’s missing

    1062147

      Hi,

       

      I have a use case in which i am calling Synchronous External Web Service and form this service i am getting response after 80 second.

      I know that form EM console soa-infra-->SOA Administration --> BPEL Proprieties --> under ‘More BPEL Configuration Properties..’ at SyncMaxWaitTime i can change it from default 45 Second to 80 Second, but it will apply to all synchronous service in that domain and i only want to set timeout limit to particular External Reference Web Service call (Partner link).

       

      For setting timeout limit for particular web service (external reference partner link) :

      I saw one post at < http://www.mandsconsulting.com/asynchronous-vs-synchronous-bpel-processes > in which there is an option in “Edit Partner link” dialog box form property tab we can add ‘timeout’ property but in SOA Suite11.1.1.7 i am not able to find that property form the list.

      on this post < http://abhishek-soablog.blogspot.in/2010/06/timeout-for-partnerlink.html > also the same way is described but this is just the source code of above GUI way to set time out property and it is not working with a new version.

       

      Can anybody please tell me that in a new version (11.1.1.7) of SOA suite what is the way to set timeout for particular web service (external reference partner link).

       

      Thank

        • 1. Re: How to set time out property for Web Service Partner link in new version of SOA Suite, it’s missing
          Rajeev Misra-Oracle

          Hi,

           

          SyncMaxWaitTime setting of BPEL is only applicable for Synchronous BPEL process that has mid process dehydration point.  For example

           

          Receive

            |

          Wait activity (60 second)

          |

          Reply

           

          Above is synchronous BPEL process but has mid process dehydration point (wait activity).  When instance starts at Receive activity inside Transaction T1, that T1 is committed at wait activity, but client thread can not return at that time as reply activity was not executed, so client calling thread is put to sleep for at most SyncMaxWaitTime.  Once wait activity completes, a new transaction T2 starts in different thread, and that different thread executes Reply activity and then it wakes up original client calling thread and now client thread returns with response (output variable) that was populated in reply activity.  Here you can see client calling thread would timeout if SyncMaxWaitTime is set to 45 seconds as wait activity takes 60 seconds.   In this case increasing SyncMaxWaitTime to more than 60 seconds would avoid timeout seen on client side.

           

          In your case I am not sure if above is the scenario.  I am guessing you are invoking some webservice (probably not sync BPEL process as webservice) that takes 80 seconds to respond.  In that case SyncMaxWaitTime would not help.  Let me explain why

           

          Receive

            |

          2 Way Invoke ------------------> webservice

          |

           

          In above case, when 2 way invoke is done, thread that is invoking webservice is put to sleep (with no relation to SyncMaxWaitTime) waiting for response from webservice.  I guess there are some timeout at higher layer (HTTP timeout, or tcp timeout) but this thread's sleep interval has no relation to SyncMaxWaitTime, so changing SyncMaxWaitTime may not help.

          • 2. Re: How to set time out property for Web Service Partner link in new version of SOA Suite, it’s missing
            1062147

            Yes Rajeev i got your point that if i am using any activity eg receive or reply then this ‘SyncMaxWaitTime’ applies but when there is :

             

            Invoke-->Partner Link (Synchronous Service)


            it doesn't apply.

             

            In my case there is a Simple Synchronous invoke form Synchronous BPEL and earlier there was an option to set timeout limit by just double click on partner link (External Reference) form bpel in JDeveloper and form property tab we can choose that 'timeout' limit property for Synchronous BPEL which is calling Synchronous BPEL.

            Can you tell me is this option is replaced by some other option.

             

             

            Thanks

            • 4. Re: How to set time out property for Web Service Partner link in new version of SOA Suite, it’s missing
              AlexAnd

              Can anybody please tell me that in a new version (11.1.1.7) of SOA suite what is the way to set timeout for particular web service (external reference partner link).

              try

              em -> click composite -> Services and References -> select needed reference and click -> properties :  "HTTP Read Timeout" and "HTTP Connection Timeout"

               

               

              by composite developing :

              click reference -> properties inspector -> binding properties -> green plus and add oracle.webservices.httpConnTimeout with needed value and oracle.webservices.httpReadTimeout with needed value

               

              for same domain set: oracle.webservices.local.optimization = false

               

              you can look at

              Administering Web Services - 11g Release 1 (11.1.1.7)

              How to Set a Timeout for a Web Service in SOA 11g (Doc ID 979683.1)

              SOA 11g: Fault Policy Not Intercepting "service Endpoint Unreachable" Error (Doc ID 1503989.1)