um yes, the layout.json takes precedence. I should've said that.
On 2 September 2014 14:02, Jeroen van der Wal <[email protected]> wrote: > I see you have a Person.layout.json file too. These two don't work well > together, either choose annotations or the layout file. I prefer the > latter. > > Cheers, > > Jeroen > > > On Tue, Sep 2, 2014 at 2:58 PM, <[email protected]> wrote: > > > >Excuse me for not being clear: > > > > My problem is that the other properties of Person appear in columns after > > gender ("geslacht") although I have made annotations for them to appear > > before gender: > > > > F.I. > > > > firstName() has @MemberOrder(sequence="10") but appears after > > getGenderForTables() that has @MemberOrder(sequence="55") > > > > See [2] > > > > I don't understand why this is ... > > > > > > > > [2] > > > > > > > https://github.com/johandoornenbal/socrates/blob/master/dom/src/main/java/nl/socrates/dom/party/Person.java > > > > > > Not sure I follow on this... > > > > ... the second property listed, getGenderForTables(), is annotated with > > @Hidden(where=Where.OBJECT_FORMS), so it *is* going to appear in a table, > > with a column name of "Geslacht". > > > > Perhaps remove the two @Named annotations temporarily so you can > > distinguish one property from the other? > > > > > > > > > > On 2 September 2014 13:33, wrote: > > > > > > Still wrestling with ENUM: gender always appears in first column no > > > matter what I do with MemberOrder. > > > > > > Any Idea? > > > > > > > > > private PersonGenderType gender; > > > > > > @javax.jdo.annotations.Column(allowsNull = "false", length > = > > > JdoColumnLength.TYPE_ENUM) > > > > > > @MemberOrder(sequence = "50") > > > > > > @Named("Geslacht") > > > > > > @Hidden(where=Where.ALL_TABLES) > > > > > > public PersonGenderType getGender() { > > > > > > return gender; > > > > > > } > > > > > > > > > > > > @Hidden(where=Where.OBJECT_FORMS) // appears only in tables > > > > > > @MemberOrder(sequence = "55") > > > > > > @Named("Geslacht") > > > > > > public PersonGenderType getGenderForTables() { > > > > > > return getGender(); > > > > > > } > > > > > > > > > > > > public void setGender(final PersonGenderType gender) { > > > > > > this.gender = gender; > > > > > > } > > > > > > > > > > > > There's a couple of tricks you can do to order columns in a table > > > separately from as an object form. > > > > > > One technique is to use member groups to group on the object form. The > > > groups are then laid out in the order of @MemberGroupLayout. > > > > > > Meanwhile, (I'm pretty sure that) the columns of the table are laid out > > per > > > @MemberOrder(sequence) without regard for the member group. So with a > > bit > > > of playing around you can get the columns to appear in a different > order. > > > > > > The above technique has been all we've needed for Estatio. > > > > > > ~~~ > > > Alternatively, (more boilerplate but perhaps more maintainable) you can > > > create derived properties and then hide the originals as required, eg: > > > > > > public class Customer { > > > > > > @Hidden(where=ALL_TABLES) // appears only on object forms > > > @MemberOrder(sequence="1") > > > String getFirstName() { ... } > > > > > > @MemberOrder(sequence="2") > > > String getLastName() { ... } > > > > > > @Hidden(where=OBJECT_FORMS) // appears only in tables > > > @MemberOrder(sequence="3") > > > @Named("First name") > > > String getFirstNameInTables() { return getFirstName()); > > > > > > } > > > > > > In an object form, you should see: firstName, lastName. > > > In a table, you should see: lastName, firstName > > > > > > HTH > > > Dan > > > > > > > > > > > > > > > > > > > > > On 2 September 2014 10:47, wrote: > > > > > > > > Tnc Dan. I checked those already but somehow it is not clear to me > > how > > > > to order columns within a table that represents a collection. > (Without > > > > altering the order of fields in the form using @MemberOrder). Is > there > > a > > > > way to do that? > > > > > > > > > > > > statically via @MemberOrder and @MemberGroupLayout annotations, see > [1] > > > > > > > > dynamically via .layout.json file: see [2] > > > > > > > > HTH > > > > Dan > > > > > > > > [1] > > http://isis.apache.org/components/viewers/wicket/static-layouts.html > > > > [2] > > > http://isis.apache.org/components/viewers/wicket/dynamic-layouts.html > > > > > > > > > > > > > > > > On 2 September 2014 08:28, wrote: > > > > > > > > > Hi, > > > > > > > > > > > > > > > > > > > > How can I order the columns (properties of an object) of an > > collection > > > in > > > > > the wicketviewer? I think Jeroen told me but I forgot, sorry. > > > > > > > > > > (I would like to know how to do it using JSON layout and/or > > > Annotations) > > > > > > > > > > For example ordering all persons in my socrates app [1] > > > > > > > > > > > > > > > > > > > > [1] https://github.com/johandoornenbal/socrates > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >
