Hello, These catch clauses are somehow different from each other. Why ?
In the first case 'NoSuchElementException' is somehow escaping the 'catch' block. My test fails. But the second clause succeeds as expected. Clause 1 : catch( NoSuchElementException nse ){ throw new NoSuchWidgetException( " Element " + by.toString() + " not found" + " after polling for [" + pollingInterval.longValue() + "] with timeout set to [" + timeOut.longValue() ); } Clause 2 : try{ WaitForWidget<Widget> wait = new WaitForWidget<WebDriver>(wd). pollingEvery(pollingInterval.longValue(),unit). withTimeout(timeOut.longValue(),unit). withMessage(supplierClosure) wait.until( { wd.findElement( by )} as Function ) }catch( nse ){ throw new NoSuchWidgetException( " Element " + by.toString() + " not found" + " after polling for [" + pollingInterval.longValue() + "] with timeout set to [" + timeOut.longValue() ); } Thanks, Mohan