When using the Date serializer/deserializer:
<format type="java.util.Date" deserializer="org.jibx.runtime.Utility.deserializeDate" serializer="org.jibx.runtime.Utility.serializeDate"/>
it is actually one day off. When deserializing a date, it subtracts a day and when serializing it adds a day. Attached is example code of this, but basically the problem is on line 652 of Utility.java:
long day = parseDigits(text, split+4, 2) - 1;
which converts 2008/03/11 to 2008/03/10. It looks like it will also add a day when deserializing it (line 1121 of Utility.java) :
int day = (int)(extra / MSPERDAY) + 1;
The attached code is a modified version of the starter application to include a date and throws an exception if the date is a day off.