The problem is that the finally block would remove any exceptions being thrown since it would issue a "normal" return.
From the JLS spec:
Abrupt completion of a finally clause can disrupt the transfer of control initiated by a return statement.
and (more relevant in your case):
Note that abrupt completion of a finally clause can disrupt the transfer of control initiated by a throw statement.