Domanda

Sto estraendo un timestamp lungo da un database, ma desidero presentarlo come una data utilizzando solo i tag, senza Java incorporato nel JSP.

Ho creato il mio tag per fare questo perché non sono riuscito a far funzionare i tag parseDate e formatDate, ma questo non vuol dire che non funzionino.

Qualche consiglio?

Grazie.

È stato utile?

Soluzione

I tag parseDate e formatDate funzionano, ma funzionano con gli oggetti Date.Puoi chiamare new java.util.Date(longvalue) per ottenere un oggetto data, quindi passarlo al tag standard.

da qualche parte diverso da jsp crea il tuo oggetto data.

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

inseriscilo nella richiesta e poi potrai accedervi nel tuo tag in questo modo.

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

Altri suggerimenti

Puoi evitare di dover apportare modifiche al tuo Servlet creando un oggetto data all'interno del JSP utilizzando il file jsp:useBean E jsp:setProperty tag per impostare l'ora dell'oggetto data appena creato su quella del timestamp.Per esempio:

<%@ 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"/>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top