Ok.
When I execute a query using the Java driver, I do get the column names back. When I execute that same query as a stored procedure, I get the error. My guess is that metadata is not coming back from variable output stored procedures, or I have a configuration error.