The bean validation will allow PatternTesting to guarantee that only valid objects are returned from a method. Also as parameter only valid objects can be forced.
The OVal framework (http://oval.sf.net) provides some support for it (see http://oval.sourceforge.net/userguide.html#d4e233\). Perhaps this is sufficient. If not add support for it.