Re: Cayenne validation

From: Malcolm Edgar (malcolm.edga..mail.com)
Date: Wed Mar 14 2007 - 19:51:11 EDT

  • Next message: Lachlan Deck: "Re: lifecycle callbacks not always fired"

    One of the great features of Cayenne is that you can get this object
    meta data, and enhance your UI so that it is aware of these
    constraints.

    See the method: setObjEntityFieldConstrains(String, ObjEntity) for an example:

    http://svn.sourceforge.net/viewvc/click/trunk/click/extras/src/net/sf/click/extras/cayenne/CayenneForm.java?revision=1725&view=markup

    regards Malcolm Edgar

    On 3/15/07, Aristedes Maniatis <ar..aniatis.org> wrote:
    >
    > On 15/03/2007, at 6:38 AM, syrinx wrote:
    >
    > > For example, if I try to commit an object with a missing "mandatory
    > > field",
    > > I get a ValidationException. From that exception I can access a
    > > BeanValidationFailure object which contains the details of the
    > > validation
    > > error (description, source, attribute). The thing is that I would
    > > like to
    > > change the generic error messages (ex: field cannot be empty, field
    > > exceeds
    > > maximum allowed length) thrown by cayenne and these messages seem
    > > to be hard
    > > coded in the sources.
    > >
    > > Is there a "clean way" to customize those messages?
    >
    > Write your own validateForSave functions within the object entity
    > subclass which return any validation message you want.
    >
    > if (getLastName() == null || getLastName().trim().length() == 0) {
    > result.addFailure(ValidationFailure.validationFailure(this,
    > Student.LAST_NAME_PROPERTY,
    > "You must enter a student last name."));
    > }
    >
    > Ari Maniatis
    >
    >
    > -------------------------->
    > Aristedes Maniatis
    > phone +61 2 9660 9700
    > PGP fingerprint 08 57 20 4B 80 69 59 E2 A9 BF 2D 48 C2 20 0C C8
    >
    >
    >



    This archive was generated by hypermail 2.0.0 : Wed Mar 14 2007 - 19:51:47 EDT