[
https://jira.jboss.org/jira/browse/JBSEAM-3551?page=com.atlassian.jira.pl...
]
Francisco Jose Peredo Noguez commented on JBSEAM-3551:
------------------------------------------------------
Maybe I am mistaken, but I think all this efforts that the Java community started (like
EJB3, WebBeans, Seam, etc) were a reaction to Ruby on Rails and its convention over
configuration and sensible defaults philosophy that make thinks "just work" the
first time, even if that required the initially generated code to be
"opinionated". I haven't tried Ruby, but I think this is why those RoR guys
find it so easy to say that coding using Java frameworks is so hard, in Java we can not
even agree to use Date following a sensible formating default (like ISO or even better: by
reading the current localization configuration of the JVM) so that when someone decides to
use them for a plain form page to capture a date everything just works the first time,
without hassles.
I think that a core value for this new generation of Java frameworks should be : "It
just works, the first time, using sensible defaults, if you don't like those defaults,
you can alter them later" and not: "It just fails to work the first time,
because we couldn't agree on a sensible default, go find yourself a solution")
Seam can not convert java.util.Date, it ignores
javax.faces.convert.DateTimeConverter
-------------------------------------------------------------------------------------
Key: JBSEAM-3551
URL:
https://jira.jboss.org/jira/browse/JBSEAM-3551
Project: Seam
Issue Type: Bug
Affects Versions: 2.0.2.SP1
Environment: Jdk 1.5. Tomcat 6.0.18, Jboss Tools 2.1.2
Reporter: Francisco Jose Peredo Noguez
Assignee: Dan Allen
Attachments: SeamTestCase.zip
Create a Seam project using Jboss Tools 2.1.2.
Create a new Seam Form with name "SeamDateForm"
Open the file SeamDateForm.java and change the value from Integer to java.util.Date.
Right-click seamDateForm.xhtml and click Run As... -> Run On Server.
Write something in the form (like for example some random string "dfasdf")
You will get the error: Conversion Error setting value 'dfasdf' for 'null
Converter'.
Now create a Date Converter, as the one included in the attached test case project (BTW
it inherits from javax.faces.convert.DateTimeConverter).
Stop the application (just to be 100% sure everything gets loaded correctly)
Again:
Right-click seamDateForm.xhtml and click Run As... -> Run On Server.
Write something in the form (like for example some random string "dfasdf")
Now you get the right error: value must be a date, eg. 10/13/2008.
Of course it not only fails when you write a random string, even if you write a correct
date, like 01/01/2001, you will get an error that says: Conversion Error setting value
'01/01/2001' for 'null Converter'. But if you write your own converter
(for example inheriting from javax.faces.convert.DateTimeConverter) everything works
fine.
I think Seam should use javax.faces.convert.DateTimeConverter by default, I shouldn't
need to create my own converter.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira