Sure Geert, here they are and I'm including CityMetaData so it is all in one place. And thanks for the fast reply!
public class CityMetaData extends MetaData<ConstrainedBean, ConstrainedProperty> { public void activateMetaData() { addConstraint(new ConstrainedBean() .defaultOrder("name") .textualIdentifier(new AbstractTextualIdentifierGenerator<City>() { public String generateIdentifier() { return mBean.getId() + " : " + mBean.getName(); } })); addConstraint(new ConstrainedProperty("id") .editable(false).identifier(true)); addConstraint(new ConstrainedProperty("name") .editable(true) .notNull(true) .listed(true) .maxLength(255)); addConstraint(new ConstrainedProperty("statId") .notNull(true).listed(true) .manyToOne(Stat.class, "id")); } } public class StatMetaData extends MetaData<ConstrainedBean, ConstrainedProperty> { public void activateMetaData() { addConstraint(new ConstrainedBean() .defaultOrder("name") .defaultOrder("abreviation") .textualIdentifier(new AbstractTextualIdentifierGenerator<Stat>() { public String generateIdentifier() { return mBean.getId() + " : " + mBean.getName(); } })); addConstraint(new ConstrainedProperty("id") .editable(false).identifier(true)); addConstraint(new ConstrainedProperty("name") .notNull(true).notEmpty(true) .maxLength(255).listed(true)); this.addConstraint(new ConstrainedProperty("abbreviation") .editable(true) .notNull(true) .unique(true) .maxLength(2)); } } public class City { private Integer id; private Integer statId; private String name; public Integer getStatId() { return statId; } public void setStatId(Integer statId) { this.statId = statId; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } public class Stat { private Integer id; private String name; private String abbreviation; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAbbreviation() { return abbreviation; } public void setAbbreviation(String abbreviation) { this.abbreviation = abbreviation; } } Geert Bevin wrote: > > Hi Steve, > > can you please paste the City bean, the Stat bean and the > StatMetaData class also? > > Best regards, > > Geert > > On 07 Dec 2006, at 22:19, Steve Holmes wrote: > >> >> Hello All! >> I have been trying my hand with Rife once again and am a bit >> confused with >> Rife/CRUD. I am using Rife 1.5.1 and CRUD 1.3.1 and my DB is derby >> just >> like in the tutorial. I was more or less following Geert's >> Tutorial which I >> think is absolutely great since I use intellij. >> >> The problem is that my manyToOne constraints are not producing >> select drop >> downs. As an example, I have cities and States. A state can >> contain many >> cities so a city will have a manyToOne constraint. Here is my >> CityMetaData >> class: >> >> public class CityMetaData extends MetaData<ConstrainedBean, >> ConstrainedProperty> { >> public void activateMetaData() { >> addConstraint(new ConstrainedBean() >> .defaultOrder("name") >> .textualIdentifier(new >> AbstractTextualIdentifierGenerator<City>() { >> public String generateIdentifier() { >> return mBean.getId() + " : " + mBean.getName(); >> } >> })); >> >> addConstraint(new ConstrainedProperty("id") >> .editable(false).identifier(true)); >> >> addConstraint(new ConstrainedProperty("name") >> .editable(true) >> .notNull(true) >> .listed(true) >> .maxLength(255)); >> >> addConstraint(new ConstrainedProperty("statId") >> .notNull(true).listed(true) >> .manyToOne(Stat.class, "id")); >> } >> } >> >> Notice the manyToOne to statId. Shouldn't that produce a Select >> drop down >> on the add city page like in the tutorial? If not, how do I do it? >> >> Thanks in advance! >> -Steve >> -- >> View this message in context: http://www.nabble.com/ManyToOne-and- >> Rife-CRUD-tf2777133.html#a7747868 >> Sent from the RIFE - users mailing list archive at Nabble.com. >> >> _______________________________________________ >> Rife-users mailing list >> Rife-users@uwyn.com >> http://lists.uwyn.com/mailman/listinfo/rife-users >> > > -- > Geert Bevin > Uwyn "Use what you need" - http://uwyn.com > RIFE Java application framework - http://rifers.org > Music and words - http://gbevin.com > > > _______________________________________________ > Rife-users mailing list > Rife-users@uwyn.com > http://lists.uwyn.com/mailman/listinfo/rife-users > > -- View this message in context: http://www.nabble.com/ManyToOne-and-Rife-CRUD-tf2777133.html#a7748653 Sent from the RIFE - users mailing list archive at Nabble.com. _______________________________________________ Rife-users mailing list Rife-users@uwyn.com http://lists.uwyn.com/mailman/listinfo/rife-users