Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

javax.el.PropertyNotFoundException: Property [dataAbertura]



out 18, 2020 6:41:14 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [br.com.alura.gerenciador.servlet.listaEmpresas] in context with path [/gerenciador] threw exception [javax.el.PropertyNotFoundException: Property [dataAbertura] not found on type [br.com.alura.gerenciador.servlet.Empresa]] with root cause
javax.el.PropertyNotFoundException: Property [dataAbertura] not found on type [br.com.alura.gerenciador.servlet.Empresa]
    at javax.el.BeanELResolver$BeanProperties.get(BeanELResolver.java:260)
    at javax.el.BeanELResolver$BeanProperties.access$300(BeanELResolver.java:212)

<%@page import="org.apache.jasper.tagplugins.jstl.core.ForEach"%>
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="UTF-8"%>
    <%@page import="java.util.Collection, java.util.ArrayList, br.com.alura.gerenciador.servlet.Empresa" %>
    <%@taglib uri= "http://java.sun.com/jsp/jstl/core" prefix="c"%>
    <%@taglib uri= "http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title> JSTL = Java Standard Taglib </title>
</head>
<body>
Lista de empresas: <br />
<ul>
<c:forEach items="${empresas}" var="empresa">
<li>${empresa.nome} - <fmt:formatDate value="${empresa.dataAbertura}" pattern="dd/MM/yyyy"/> </li>
</c:forEach>
</ul>
</body>
</html>

package br.com.alura.gerenciador.servlet;
import java.util.Date;
public class Empresa {

    private Integer id;
    private String nome;
    private Date dataAbertura;


    public Integer getId() {
        return id;
    }

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

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public Date getDataAbertura() {
        return dataAbertura;
    }

    public void setDataAbertura(Date dataAbertura) {
        this.dataAbertura = dataAbertura;
    }

    }
HTTP Status 500 - Erro interno do servidor
Relatório de exceção de tipo

Mensagem javax.el.PropertyNotFoundException: Property [dataAbertura] não encontrada no tipo [br.com.alura.gerenciador.servlet.Empresa]

Descrição O servidor encontrou uma condição inesperada que o impediu de atender à solicitação.

Exceção

org.apache.jasper.JasperException: javax.el.PropertyNotFoundException: Property [dataAbertura] não encontrado no tipo [br.com.alura.gerenciador.servlet.Empresa]
    org.apache.jasper.servlet.JspServletWrapper.handleJspException (JspServletWrapper.java:598)


Estou horas tentando resolver vi que alguns tiveram o mesmo problema mas não encontrei solução alguma se puderem me ajudar agradeço muito e espero que o meu problema não seja mais uma mensagens e descrição de alguém que não foi respondido(solução).
Obs: Quanto eu acesso https://localhost:8080/gerenciador/listaEmpresas.jsp não aparece nada mesmo eu cadastrando 
(Lista de empresas: .......)
em fim...tentando encontrar a resposta 
já debugei passei horas lendo linha por linha observando importação mas sem solução.
4 respostas

Confirma se na pasta libs as bibliotecas não tem dois jar's iguais "JSTL-1.2.JAR". Outro aluno teve esse problema e era o jar que estava duplicado na pasta lib do projeto

/gerenciador/WebContent/WEB-INF/lib/

Acabei de ver e não tem dois jar's se pudesse mandar um print da pastaria aqui.. mas tudo bem eu agradeço pela ajuda.

a minha duvida é outra agora, é sobre JSTL queria saber aonde posso fazer uma pergunta relacionado a JSTL se vale apena aprender ou não ainda..se ta ultrapassado ou é necessário.

solução!

JSTL ainda é bem usado em projetos Java, especialmente aqueles um poucos mais antigos ou legados, mas está sendo cada vez menos usado em projetos novos.

muito obg Otávio