You will need to explicitly add that field to your model. You should be able to just use add="questionType", or you can provide your own model.
If you want your column to be sortable, then supply your own model, and have QuestionType implement Comparable. > -----Original Message----- > From: Artur_eol [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 26, 2008 09:20 > To: users@tapestry.apache.org > Subject: Tapestry 5, problem with foreign field > > > Hello everybody, I hava problem with foreign key - field. This is my Java > class: > > package org.cimlvin.domain.model; > > import java.io.Serializable; > import java.sql.Date; > > import javax.persistence.Basic; > import javax.persistence.Column; > import javax.persistence.Entity; > import javax.persistence.FetchType; > import javax.persistence.GeneratedValue; > import javax.persistence.GenerationType; > import javax.persistence.Id; > import javax.persistence.JoinColumn; > import javax.persistence.JoinColumns; > import javax.persistence.ManyToOne; > import javax.persistence.NamedQueries; > import javax.persistence.NamedQuery; > import javax.persistence.Table; > > import org.apache.tapestry.beaneditor.Validate; > > // TODO: Auto-generated Javadoc > /** > * The Class QuestionaireQuestion. > */ > @SuppressWarnings("unchecked") > @Entity > @Table(name = "QUESTIONS") > @NamedQueries( { > @NamedQuery(name = "QuestionaireQuestion.findByType", > query > = "select e from QuestionaireQuestion e where e.questionType = ?1"), > @NamedQuery(name = "QuestionaireQuestion.findByTitle", > query > = "select e from QuestionaireQuestion e where e.title = ?1"), > @NamedQuery(name = "QuestionaireQuestion.findById", query > = > "select e from QuestionaireQuestion e where e.id = ?1"), > @NamedQuery(name = "QuestionaireQuestion.findAll", query = > "select e from QuestionaireQuestion e") }) > public class QuestionaireQuestion implements Serializable, Comparable { > > /** The Constant serialVersionUID. */ > private static final long serialVersionUID = -9137096316582763142L; > > /** The _title. */ > private String _title = ""; > > /** The _create date. */ > private Date _createDate = new Date(System.currentTimeMillis()); > > /** The _questionType. */ > private QuestionType _questionType; > > /** The id. */ > private long id; > > /* > * (non-Javadoc) > * > * @see java.lang.Comparable#compareTo(java.lang.Object) > */ > public int compareTo(Object o) { > return String.valueOf(this).compareTo(String.valueOf(o)); > } > > /** > * Gets the id. > * > * @return the id > */ > @Id > @Column(name = "QUES_ID") > @GeneratedValue(strategy = GenerationType.AUTO) > public Long getId() { > return id; > } > > /** > * Sets the id. > * > * @param id > * the new id > */ > public void setId(long id) { > this.id = id; > } > > /** > * Gets the title. > * > * @return the title > * */ > @Column(name = "TITLE", nullable = false) > public String getTitle() { > return _title; > } > > /** > * Sets the title. > * > * @param title > * the new title > */ > @Validate("required") > public void setTitle(String title) { > _title = title; > } > > /** > * Gets the creates the date. > * > * @return the creates the date > */ > @Column(name = "CREATE_DATE", nullable = false) > public Date getCreateDate() { > return _createDate; > } > > /** > * Sets the creates the date. > * > * @param date > * the new creates the date > */ > @Validate("required") > public void setCreateDate(Date date) { > _createDate = date; > } > > /** > * Gets the question type. > * > * @return the question type > */ > @ManyToOne > @JoinColumns( { @JoinColumn(name = "TOQ_TOQ_ID", nullable = false) }) > @Basic(fetch = FetchType.LAZY) > public QuestionType getQuestionType() { > return _questionType; > } > > /** > * Sets the question type. > * > * @param type > * the new question type > */ > @Validate("required") > public void setQuestionType(QuestionType type) { > _questionType = type; > } > > } > > My page: > > ManageQuestion.java: > > package org.cimlvin.web.pages.admin; > > import java.util.List; > > import org.acegisecurity.annotation.Secured; > import org.apache.tapestry.annotations.Property; > import org.apache.tapestry.annotations.Service; > import org.apache.tapestry.ioc.annotations.Inject; > import org.cimlvin.domain.model.QuestionaireQuestion; > import org.cimlvin.service.QuestionManager; > > @Secured("ROLE_ADMIN") > public class ManageQuestions { > > /** The question manager **/ > @Inject > @Service("QuestionManager") > private QuestionManager questionMgr; > > /** The question **/ > @SuppressWarnings("unused") > @Property > private QuestionaireQuestion question; > > > public List<QuestionaireQuestion> getquestions() { > return questionMgr.getAllQuestions(); > } > > > } > > > ManageQuestions.tml: > > <t:layout > title="literal:Administration Area - Manage Questions" > xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd"> > <div class="post"> > <h2 class="title">Administration Area - Manage Questions</h2> > <div class="entry"> > <h3>Question List</h3> > <t:grid t:source="questions" row="question" rowsPerPage="20"> > <t:parameter name="titleCell"> > <t:pagelink t:page="admin/ManageQuestion" > t:context="question.id">${question.title}</t:pagelink> > </t:parameter> > <t:parameter name="questionTypeCell"> > ${question.questionType.Name} > </t:parameter> > </t:grid> > </div> > </div> > </t:layout> > > So my class has 4 properties, but when I try to see it, I see only 3. grib > shows me id,title and create date. It did show me QuestionType (foreign > key). I don`t understand why.. > > Thank you. > -- > View this message in context: http://www.nabble.com/Tapestry-5%2C-problem- > with-foreign-field-tp19161912p19161912.html > Sent from the Tapestry - User mailing list archive at Nabble.com. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]