Dúvida, ler dados com herança

Vou postar abaixo como está meu código

 public class Refeicao{

	private int Id;
	private Cliente ClienteId;
	private Alimento AlimentoId;
	private int Quantidade;
	private Date DataRegistro;

	public int getId() {
		return Id;
	}

	public void setId(int id) {
		Id = id;
	}

	public Date getDataRegistro() {
		return DataRegistro;
	}

	public void setDataRegistro(Date dataRegistro) {
		DataRegistro = dataRegistro;
	}

	public Cliente getClienteId() {
		return ClienteId;
	}

	public void setClienteId(Cliente clienteId) {
		ClienteId = clienteId;
	}

	public Alimento getAlimentoId() {
		return AlimentoId;
	}

	public void setAlimentoId(Alimento alimentoId) {
		AlimentoId = alimentoId;
	}

	public int getQuantidade() {
		return Quantidade;
	}

	public void setQuantidade(int quantidade) {
		Quantidade = quantidade;
	}
	
	
	
}

Tentei fazer a chamada no JSTL :

                        <c:forEach var="item" items="${listaRef}">
                            <tr>
                                <td>${item.id}</td>
                                <td>${item.quantidade}</td>
                                <td>${item.cliendid.nome}</td>
                                <td>122kcal</td>
                                <td>02/07/2019 10:35</td>
                                <td><button onclick="add()" class="btn btn-warning btn-sm btn-xs"><i class="fa fa-edit"></i>
                                        Editar</button></td>
                                <td>
                                    <button class="btn btn-danger btn-sm btn-xs"><i
                                            class="fa fa-minus-circle"></i>
                                        Deletar</button>
                                </td>

                            </tr>
                           </c:forEach> 

Mas não vai, por gentileza alguém pode me dá uma luz.

Não vai pra onde, cara? Ou você explica o que acontece (ou não acontece) ou fica complicado adivinharmos, né?

Tá difícil entender hein, postei a classe que faço uma herança, não sei se notou, mas postei um código com a linha que estou querendo mostrar na tela.

${item.cliendid.nome}

Sim, está. Quando você não exiplica, isso acontece. As pessoas não entendem, até por que, ninguém é obrigado a adivinhar o que você está imaginando.

Você postou um código com mais informações do que apenas esta linha.

Aliás, a referência que está fazendo não tem lhufas a ver com herança. É uma agregação, apenas isso. Está bem confuso nos conceitos, hein?

Agora, eu não sei se você só errou na digitação ou o que, mas, quando você usa JSTL, você precisa ter certeza que os objetos e atributos estão da mesma maneira como foram declarados:

É diferente de

${item.clienteId.nome}

Caso esteja diferente do declarado no getter, não funcionará.

1 curtida

Só acho amigo que vc tem que baixa mais sua bola, eu sou iniciante no Java, vai ser a primeira e última vez que pergunto algo aqui, porém não sou iniciante em programação trabalho já a 5 anos com .NET.

Cara, baixa tua bola você.
Qualquer fórum que você vai, seja java, .net, php ou o que seja, você explica o que acontece. Sem isso, fica quase impossível responder.
Note que, quando você isolou a linha em que estava tendo o problema (sim, de iniciante mesmo) ficou fácil identificar o teu erro