I know we can call webservice from within PL/SQL block. im wondering whether is it possible to call a webservice asynchronously ? (like how we call in c#). If this is possible how do we know whether asynchronous call has completed its execution ?
Create a packaged procedure to call the web service and configure it with DBMS_SCHEDULER. You can then submit a request to run the job immediately - it will run async.
If you need to know whether it failed or not inside your original transaction, you may need to use the supplied procs/functions to check the status. If you just need to handle the error somehow, then put your exception code inside the scheduled process.