I think the answer to your question is 'no'. You could come up with a technique using a separate thread that returned after 15 seconds, but the long-running method would still be running in the separate thread. It might look like you made a 15-second call the first time you tried it, but it wouldn't allow you to make 4 such calls per minute, if the previous calls were still running and the subsequent calls were equally long-running.
Folder (Java EE 5 SDK)
Google's gmail web client does fast server-side searching, but for the rest of us client-side searching (with the attendant colossal cache - used Thunderbird continuously for a few years?) is probably the only solution.