Jag kommer inte ihåg varför men för datum kräver Hibernate att du använder den här konstruktionen:
query.setParameter("frmdate", frmDate, Hibernate.DATE);
query.setParameter("todate", toDate, Hibernate.DATE);
Jag använder det bara med Calendar-objekt och med Hibernate.CALENDAR så du kanske måste anpassa den exakta typen.