In 4.0 M3, we un-deprecated props in the template, as it was annoying indeed. Instead we made their generation optional per https://issues.apache.org/jira/browse/CAY-1991 . So if you have a new app, you won't get String properties, only Property objects. If you want to try it, you can get an unofficial build of Cayenne HEAD from here:
http://maven.objectstyle.org/nexus/content/repositories/cayenne-unofficial/org/apache/cayenne/cayenne-server/4.0.M3.0ac54cb/ In M2 your option is to use a custom cgen template, removing deprecation stuff. Andrus > On Jul 31, 2015, at 8:08 PM, Mike Kienenberger <mkien...@gmail.com> wrote: > > I haven't gotten to the point of converting from 3.x to 4.x, but I'm > surprised to hear that the entity *_PROPERTY fields are deprecated. > These values are generated in the templates, so they're totally under > the developer's control. They're not considered part of the cayenne > core library since you can customize your generated _superclass file > or even do away with it completely. > > When I look at > ....git/cayenne/cayenne-tools/src/main/resources/templates/v1_2/superclass.vm, > I don't see any indication that the generated properties are > deprecated. > > Maybe I am misunderstanding what you are asking about? > > > On Fri, Jul 31, 2015 at 12:50 PM, Joe Baldwin <jfbald...@earthlink.net> wrote: >> I hope you enjoyed my technical description in the subject heading. :) But >> it is, in fact, accurate. >> >> (Context: I am converting from 3.0 to 4.0): >> >> I have been following Cayenne best practices and have been building queries >> (and quite a few of the, I might add) with Cayenne-Entity-Property >> conventions. Simple example: >> >> Expression exp = >> ExpressionFactory.matchExp(Product.IS_DISABLED_PROPERTY, false); >> >> In addition, I have been using the Cayenne PROPERTY definitions as part of >> my core logic. >> >> Now I find (in 4.0) that all of these PROPERTY definitions are Deprecated. >> >> Other than my personal opinion, that I am not terribly excited about the >> prospect of ripping out all of my core logic, I would like to find out if >> this conversion is going to be easier that I estimate. (As usual, I have >> tried to search the docs and could not find a good “how-to” for a simple >> functional replacement that would also give me access to the String value of >> the property (for display purposes). >> >> Question: >> If there is a good how-to/tutorial, please provide the link, if not, then >> could you please provide one simple example and one more complex example so >> I can get to work on this? >> >> Thanks >> Joe >> >