2016-05-23 11 views
2

Wenn ich den TagAusnahme tritt auf, wenn ich <s: datetextfield /> -Tag in einem jsp

verwenden
<s:datetextfield format="dd-MM-yyyy"></s:datetextfield> 

(wobei s ein Präfix für Streben Tag ist) ich eine Ausnahme erhalten:

org.apache.jasper.JasperException: Die Vorlage wurde nicht für den Namen "/template/bootstrap/datetextfield.ftl" gefunden.

Muss ich ein bestimmtes Datumsformat deklarieren/instanziieren und es übergeben?

Antwort

2

Es scheint, dass Sie die struts2-bootstrap-plugin verwenden, mit dem Bootstrap Thema;

scheint es auch, dass the bootstrap theme is unprovided of the freemarker template for the <s:datetextfield /> tag.

Nach der Logik ist die Lösung, die ein Thema zu verwenden (für diesen Tag nur), dass is provided of the appropriate .ftl, auf folgende Weise:

<s:datetextfield format="dd-MM-yyyy" theme="simple" /> 

Dies ist jedoch eine Nicht-Standard-Situation ist ... es ist die erste Mal sehe ich es passiert. Darüber gibt es auch einen JIRA-Bericht, WW-4434.

Ich bin mir nicht sicher, was der Tag tut, da ich neved es benutzt habe und die Dokumentation ist gebrochen, aber wenn es nur über Textfelder, Termine und Kalenderwerkzeug ist, sollten Sie mit appropriate fallbacks unter Verwendung nativer HTML5 Kalenderwerkzeuges (<s:textfield type="date"/>).

+1

FYI: https://issues.apache.org/jira/browse/WW-3493 und https://github.com/apache/ struts/blob/master/plugins/javatemplates/src/main/java/org/apache/struts2/ansichten/java/simple/DateTextFieldHandler.java. –

+1

Danke @AleksandrM. Gott, was für ein hässliches Tag: D –

+0

Ja. Ich benutze Bootstrap-Plugin. Ich muss es verwenden, weil ich nicht viel Zeit habe, an der UI zu arbeiten –

1

ich diesen Fehler hatte und löste es auf diese Weise:

<s:textfield name="date" type="date" 
        format="dd-MM-yyyy" label="BirthDate" />