DataTable com Chave Composta

Boa tarde.

Vou postar meus codigos e depois faço minha pergunta:

Minha PK

@Embeddable
public class ReferenciaConstrucaoID implements Serializable {

	private static final long serialVersionUID = 1L;
	
	@Column(length = 15)
	private String cRefer;
	
	@Column(length = 15)
	private String cConstrucao;

}

Entidade

@Entity
@Table(name = "REFERENCIACONSTRUCAO")
public class ReferenciaConstrucao implements Serializable {

	private static final long serialVersionUID = 1L;
	
	@EmbeddedId
	private ReferenciaConstrucaoID id;
	
	@Temporal(TemporalType.DATE)
	private Date desativada;

	public ReferenciaConstrucaoID getId() {
		return id;
	}

	public void setId(ReferenciaConstrucaoID id) {
		this.id = id;
	}

ManagedBean

[code]@ManagedBean(name = “referenciaController”)
@ViewScoped
public class ReferenciaConstrucaoController {

private List<ReferenciaConstrucao> listaReferencias = null;

public List<ReferenciaConstrucao> getListaReferencias() {
	if (listaReferencias == null) {
		ReferenciaConstrucaoRN referRN = new ReferenciaConstrucaoRN();
		this.listaReferencias = referRN.listar();
	}
	return this.listaReferencias;
}

}
[/code]

Como posso fazer para listar cada campo que compoe minha chave em um dataTable?

Tentei assim mas da erro:

<p:dataTable id="dataTable" rows="10" >
	<f:facet name="header">Listagem de referencias</f:facet>
	<f:facet name="footer">Total de #{fn:length(referenciaController.listaReferencias)} referencias</f:facet>

	<p:column>
		<f:facet name="header">Referencia</f:facet>
		<h:outputText value="#{referencias.id.cRefer}" />
	</p:column>

        <p:column>
		<f:facet name="header">Construcao</f:facet>
		<h:outputText value="#{referencias.id.construcao}" />
	</p:column>
</p:dataTable> 

Podem me ajudar?

Obrigado

tentou usar o {referenciaController}.id ?

tentei sim, mas ai me retorna os objetos…

Tipo ReferenciaConstrucao@5445454