Hi,
We have been using Jooq for a while and use the strategy of generating
Pojo's from a Postgres 10 DB and then on occassion where appropriate
extending the generated class if we wish to add some additional ,members
that are not in the DB,
This worked fine and we could inject a DSL result record directly into the
class and would also pick up any DB changes automatically from the
generated Pojo which it extended.
However recently we attempted to upgrade from 3.11.0 to 3.11.10 and noticed
a change in behaviour which was introduced in 3.11.6.
In org.jooq.impl.Tools.java (line 3193) when getting the annotated setters
it now uses the Class method getDeclaredMethods where before it used
getMethods, the difference being that getDeclaredMethods does not return
any public inherited methods so it cannot locate a suitable setter. Though
oddly it uses getMethods to locate the annotated getter?
This is causing us much pain, was this deliberate, can it be changed back?
the offending block is
if (suffix != null) {
try {
Method setter = type.getDeclaredMethod("set" + suffix, method.getReturnType());
// Setter annotation is more relevant
if (setter.getAnnotation(Column.class) == null)
result.add(accessible(setter));
}
catch (NoSuchMethodException ignore) {}
}
Many Thanks.
--
You received this message because you are subscribed to the Google Groups "jOOQ
User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.