Existem duas maneiras de resolver isso:
-
defina onoAccessToProcedureBodies=true
da conexão propriedade
Por exemplo, como parte da string de conexão:
jdbc:mysql://ipaddress:3306/test?noAccessToProcedureBodies=true
O driver JDBC criará strings "INOUT" para os argumentos sem exigir metadados, como diz a exceção.
-
ConcederSELECT
privilégios emmysql.proc
para o usuário do banco de dados
Por exemplo, no prompt do mysql:
GRANT SELECT ON mysql.proc TO 'user'@'localhost';
É claro que isso permitiria que o aplicativo lesse todo omysql.proc
tabela que contém informações sobre todos procedimentos armazenados em todos bancos de dados (incluindo código-fonte).