Lukasz Lenart created WW-5810:
---------------------------------
Summary: Support java.time types in the datetextfield tag
Key: WW-5810
URL: https://issues.apache.org/jira/browse/WW-5810
Project: Struts 2
Issue Type: Improvement
Components: Core Tags
Reporter: Lukasz Lenart
h2. Problem
{{datetextfield}} only works with {{java.util.Date}} properties:
* The JavaTemplates {{DateTextFieldHandler}} casts the value straight to
{{java.util.Date}}, so a {{LocalDate}} property fails with a
{{ClassCastException}}
* {{DateTextFieldInterceptor}} reassembles the split fields with
{{SimpleDateFormat}} and always sets a {{java.util.Date}}
* The html5 template added in WW-5778 renders the ISO {{yyyy-MM-dd}} value from
{{java.util.Date}} only
{{input type="date"}} maps naturally to {{java.time.LocalDate}}, which is the
type most applications now use for a date without a time.
h2. Proposal
Support {{java.time}} property types (at least {{LocalDate}}) in
{{datetextfield}}:
* html5 theme: render the ISO {{yyyy-MM-dd}} value for {{LocalDate}} (and
define the behaviour for {{LocalDateTime}} / {{ZonedDateTime}} etc. — truncate
to the date, or reject)
* JavaTemplates theme: format the split fields from {{java.time}} values and
have {{DateTextFieldInterceptor}} set the property's declared type
* Tests for each supported type, and the tag reference updated to list them
Related: WW-5778 (datetextfield in the html5 theme)
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)