Re: Cayenne validation

From: syrinx (syrinx200..mail.com)
Date: Thu Mar 15 2007 - 11:27:19 EDT

  • Next message: Mike Kienenberger: "Re: Cayenne validation"

    Thanks Malcom your comments were very helpful!

    There is one thing I can't figure out though. How can I query the metadata
    to find out if a specific relation is mandatory or not? Is there a way to
    access the db metadata and extract that kind of information?

    Your help is greatly appreciated.

    Malcolm Edgar-2 wrote:
    >
    > 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
    >>
    >>
    >>
    >
    >

    -- 
    View this message in context: http://www.nabble.com/Cayenne-validation-tf3404355.html#a9496912
    Sent from the Cayenne - User mailing list archive at Nabble.com.
    



    This archive was generated by hypermail 2.0.0 : Thu Mar 15 2007 - 11:28:00 EDT