If your spawning a new thread to handle the 'request and invoke', I would imagine all you need to do is to terminal that thread and forward to the client a custom response of your choice like 'request successfully terminated, try again ?'
Once your at this point you can consider further options to clean up the provider if that's a concern. -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: 25 January 2005 14:13 To: [EMAIL PROTECTED] Subject: abort call.invoke (SOAP client call) Hi, I'm trying to make a GUI application which is getting data through SOAP using Apache Axis. User can make a request for fetching data (by pressing some button), after which action he can deside, he don't need that data - by pressing stop button. When a user presses that "request" button, I create new thread with SOAP call (create service, get call, call.invoke). And when he presses stop button and this new thread is still running, I need to abort call.invoke (close the socket throught which more data is coming - I need to do something similar to pressing stop button in your browser. If response is very long, you can stop it. I need the same thing, but with SOAP response). Anyone knows how can I do that (if it's impossible using axis, anyone knows of other RPC method, which supports it)? Thanks for any advice, Petr ------------------------ sample scenario: -- user requests data -- new thread created, SOAP service created, call.invoke called -- short SOAP request sent over network -- very long SOAP response is coming (~ 4MB over 256kbit line, 15 seconds total) -- user pressed stop button (10 seconds of transfer still left) -- I need to close socket and don't accept data. Because I don't know, how to abort call.invoke, I let it finish and than throw away the received data. It's really stupid - user's line is fully loaded and for nothing. And he can press the "request" button again and now we have two responses coming (one valid, one old) - and this kills my application ---------------------------------------------------------------------------------------------- Did you know? Xchanging manage over 450,000 claims a year for the London Insurance Market, to a combined value of 10 billion pounds. Xchanging settle over 62 billion pounds of insurance business between over 300 companies in a global customer network. Visit www.xchanging.com for more details ---------------------------------------------------------------------------------------------- ----------------------------------------------------- THE INFORMATION IN THIS E-MAIL AND IN ANY ATTACHMENTS IS CONFIDENTIAL AND MAY BE PRIVILEGED OR OTHERWISE PROTECTED FROM DISCLOSURE. IF YOU ARE NOT THE INTENDED RECIPIENT AND HAVE RECEIVED IT IN ERROR YOU ARE ON NOTICE OF ITS STATUS. PLEASE NOTIFY THE SENDER IMMEDIATELY BY RETURN EMAIL AND THEN DELETE THIS EMAIL AND ANY ATTACHMENT FROM YOUR SYSTEM. YOU MUST NOT RETAIN, COPY OR USE THIS E-MAIL OR ANY ATTACHMENT FOR ANY PURPOSE, NOR DISCLOSE ALL OR ANY PART OF ITS CONTENTS TO ANY OTHER PERSON: TO DO SO COULD BE A BREACH OF CONFIDENCE EMAIL MAY BE SUSCEPTIBLE TO DATA CORRUPTION, INTERCEPTION AND UNAUTHORISED AMENDMENT, AND WE DO NOT ACCEPT LIABILITY FOR ANY SUCH CORRUPTION, INTERCEPTION OR AMENDMENT OR THE CONSEQUENCES THEREOF. WE MAY MONITOR THE CONTENT OF EMAILS SENT AND RECEIVED VIA OUR NETWORK FOR VIRUSES OR UNAUTHORISED USE AND FOR OTHER LAWFUL BUSINESS PURPOSES. WE DO NOT ACCEPT RESPONSIBILITY FOR ANY LOSS OR DAMAGE ARISING FROM A VIRUS IN ANY EMAIL OR ATTACHMENT. ----------------------------------------------- [EMAIL PROTECTED]