Вы указали формат как dd MMM yyyy
; согласно API это означает, что вам нужно указывать месяц в сокращенно-строковой форме (в данном случае «октябрь»). Входные данные, которые вы передали, будут правильно проанализированы, если формат будет dd MM yyyy
.
Редактировать: кажется, я немного упустил вашу мысль. То, что вы нашли, это случай, когда для данного форматера,
long input = ...; // whatever
formatter.parseMillis(formatter.print(input));
создает исключение. Хотя я не вижу никаких явных гарантий, что это всегда должно работать, я, конечно, ожидаю, что это так - так что да, я бы поддержал ваше утверждение, что это вероятная ошибка в самой Joda .
По крайней мере, если это ожидаемое поведение, должно быть гораздо более четкое указание на то, что это может произойти.