I felt it was worth throwing an explicit exception here. Otherwise they'd just get the generic Spring exception ("no matching constructor..." or whatever). This clearly conveys the problem.

Yes; the Assert is needed in the other constructor.