Por favor, use
CallableStatement stmt=con.prepareCall("{call hello(?,?)}");
ao invés de
CallableStatement stmt=con.prepareCall("{?=call hello(?,?)}");
Primeiro ? no seu código é usado para o tipo de retorno
CallableStatement stmt=con.prepareCall("{call hello(?,?)}");
CallableStatement stmt=con.prepareCall("{?=call hello(?,?)}");