Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

306
Visualizações
LocalDate en forma

Tengo una pregunta sobre el formato de fecha Spring + Thymeleaf. Tengo una entidad simple con campo de LocalDate date . Quiero obtener esta fecha de un usuario en forma y guardarla en la base de datos MySQL. Estoy recibiendo un error de este tipo:

No se pudo convertir el valor de propiedad del tipo java.lang.String al tipo requerido java.time.LocalDate para la fecha de la propiedad; la excepción anidada es org.springframework.core.convert.ConversionFailedException: no se pudo convertir del tipo java.lang.String al tipo java.time.LocalDate para el valor 2019-04-30; la excepción anidada es java.time.format.DateTimeParseException: el texto 2019-04-30 no se pudo analizar en el índice 2

Mi entidad:

 @Entity @Table(name="game") public class Game{ @Id @GeneratedValue(strategy = GenerationType.AUTO) private long id; @Transient private User gameOwner; private LocalDate date; private LocalTime time; //other fields

Vista / formulario de Thymeleaf:

 <form action="#" th:action="@{/games/addForm}" th:object="${gameForm}" method="post"> <p>Date: <input type="date" th:field="*{date}" /></p> </form>

¿Cuál es la razón de este problema? ¿Quizás hay otra forma mejor de almacenar la fecha?

about 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Problema resuelto. No sé por qué, pero cambiando mi plantilla a:

 <input type="date" th:value="*{date}" th:field="*{date}" />

y agregar @DateTimeFormat(pattern = "yyyy-MM-dd") al campo de entidad resolvió el problema.

about 4 years ago · Santiago Trujillo Relatório

0

import org.springframework.format.annotation.DateTimeFormat;

agregue la siguiente anotación arriba de la fecha.

 @DateTimeFormat(pattern = "yyyy-MM-dd") private LocalDate date;

coloque un corchete adicional alrededor de la fecha. Convertirá la fecha en cadena.

 <form action="#" th:action="@{/games/addForm}" th:object="${gameForm}" method="post"> <p>Date: <input type="date" th:field="*{{date}}" /></p> </form>
about 4 years ago · Santiago Trujillo Relatório

0

Thymeleaf proporciona un módulo adicional para eso: https://github.com/thymeleaf/thymeleaf-extras-java8time

Agregar la siguiente dependencia (maven) debería ser suficiente:

 <dependency> <groupId>org.thymeleaf.extras</groupId> <artifactId>thymeleaf-extras-java8time</artifactId> </dependency>
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda