Pregunta

Estoy extrayendo una marca de tiempo larga de una base de datos, pero quiero presentarla como una fecha usando solo etiquetas, sin Java integrado en el JSP.

Creé mi propia etiqueta para hacer esto porque no pude hacer que funcionaran las etiquetas parseDate y formatDate, pero eso no quiere decir que no funcionen.

¿Algún consejo?

Gracias.

¿Fue útil?

Solución

Las etiquetas parseDate y formatDate funcionan, pero funcionan con objetos Date.Puede llamar a new java.util.Date(longvalue) para obtener un objeto de fecha y luego pasarlo a la etiqueta estándar.

En algún lugar que no sea jsp, cree su objeto de fecha.

long longvalue = ...;//from database.
java.util.Date dateValue = new java.util.Date(longvalue);
request.setAttribute("dateValue", dateValue);

póngalo en la solicitud y luego podrá acceder a él en su etiqueta de esta manera.

<fmt:formatDate value="${dateValue}" pattern="MM/dd/yyyy HH:mm"/>

Otros consejos

Puede evitar tener que realizar cambios en su servlet creando un objeto de fecha dentro del JSP utilizando el jsp:useBean y jsp:setProperty etiquetas para establecer la hora del objeto de fecha recién creado a la de la marca de tiempo.Por ejemplo:

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
<jsp:useBean id="dateValue" class="java.util.Date"/>
<jsp:setProperty name="dateValue" property="time" value="${timestampValue}"/>
<fmt:formatDate value="${dateValue}" pattern="MM/dd/yyyy HH:mm"/>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top