Take a look at the Oracle query first to make sure it is not a source of the bottleneck. E.g. it is uses correct indexes and joins. You can probably just measure execution of this JDBC service directly from IS.
If this is not a query itself problem than likely it is simply due to the amount of data being returned via web Service, which tend to run slower with increased size of soap response. One easy thing you can try is to expose this flow service via WSD node in Intergration Server and use Doc-Liternal SOAP encoding which runs much faster than default RPC Encoded.
If nothing helps then you may need to implement more sophisticated data loading scheme to account for user response time. Typical approach would be to have two services: the one which returns only few first records to display on the screen immediately and the second one to return all records and which would run in background and make records available for the user overtime.
#webMethods#MWS-CAF-Task-Engine#webMethods-BPMS