Displaytag

contato tem vários telefones

public class Contato implements Serializable {

	private Integer id;

	private String nome;

	private String sobrenome;


	private Date dataNascimento;

	private Set<Telefone> telefoneCollection;

//...

Telefone

public class Telefone implements Serializable {

	private Integer id;

	private String codigo;

	private String numero;

	private Contato idContato;

//...

Usando displaytag, como eu consigo acessar os elementos da collection telefoneCollection para exibilos na tabela???

<display:table name="listaTodosCont" 
		id="tabela" pagesize="2"  
		sort="list" defaultsort="1" 
		requestURIcontext="false" requestURI="gerCad.action">
  <display:column property="nome" headerClass="titulo" title="Nome" sortable="true"/>
  <display:column property="sobrenome" headerClass="titulo" title="Sobrenome" sortable="true"/>
  <display:column property="dataNascimento" headerClass="titulo" title="Data de Nascimento" sortable="true"/>
  <display:column value="Editar" href="gerEdit!editar.action" paramId="id" paramProperty="id" headerClass="titulo" title="Editar" />
  <display:column value="Remover" href="gerEdit!deletar.action" paramId="id" paramProperty="id" headerClass="titulo" title="Remover" />
  
</display:table>

Olha so … faz bastante tempo que usei esta DisplayTag, mas se não me engano voce pode usar a nomeclatura objeto.subobjeto.subsubobjeto padrao do jstl, mas acho que vc nao vai conseguir resolver o seu problema em um campo.

tente fazer o seguinte, colocar a quantidade de campos para telefone que vc quer que mostre e ve faria algo do genero se quiser fazer algo mais arranjado pode usar o toString do objeto telefone


  <display:column property="telefoneCollection[0].numero" headerClass="titulo" title="Telefone 1" sortable="true"/>   
  <display:column property="telefoneCollection[1].numero" headerClass="titulo" title="Telefone 2" sortable="true"/>   

ou usando o metodo toString


  <display:column property="telefoneCollection[0]" headerClass="titulo" title="Telefone 1" sortable="true"/>   
  <display:column property="telefoneCollection[1]" headerClass="titulo" title="Telefone 2" sortable="true"/>   

boa sorte

O numero do telefone nao aparece.
Aparentemente nao funcionou

tenta colocar a notação da jstl !!!

${telefoneCollection[0].numero}

quando chegar em casa eu testo e posto aki.

abraços