No MySQL
'0000-00-00'
é considerada uma data válida, mas não pode ser representada como java.sql.Date. Você pode usar uma consulta que retorna NULL caso a data seja
'0000-00-00'
, ou o valor real de outra forma:SELECT
CASE WHEN `date`!='0000-00-00' THEN `date` END new_date
FROM
yourtable
ou você pode adicionar à sua string de conexão da fonte de dados isto:
zeroDateTimeBehavior=convertToNull
e datas como
'0000-00-00'
será automaticamente convertido para NULL.