You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Geoff Callender <ge...@gmail.com> on 2013/05/15 17:04:43 UTC

Bean validation failing on coerced date

Normally I have no problem editing a LocalDate (joda-time) field with BeanEditForm. I use type coercion between LocalDate and java.util.Date, and a PropertyEditBlock, as described here:

	http://jumpstart.doublenegative.com.au/jumpstart/examples/lang/propertyeditors

However, if I add JSR-303 Bean Validation to the property, eg.

	@NotNull
	private LocalDate testedOn;

then on submit the server-side throws an exception (stacktrace is below). In debug it looks like the bean validation is receiving the un-coerced Date and complaining because it expects a LocalDate.

Is anyone else having this problem? Is it a bug?

I'm using tapestry 5.3.7, tapestry5-jquery-3.3.4, tapestry-bootstrap-2.1.3, hibernate-validator-annotation-processor-4.3.1-Final.

ERROR [536512858@qtp-984019976-4] (OperationTrackerImpl.java:127) - Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto
ERROR [536512858@qtp-984019976-4] (OperationTrackerImpl.java:128) - Operations trace:
ERROR [536512858@qtp-984019976-4] (OperationTrackerImpl.java:137) - [ 1] Triggering event 'action' on sandpit/test/Edit:testform.form
ERROR [536512858@qtp-984019976-4] (DefaultRequestExceptionHandler.java:63) - Processing of request failed with uncaught exception: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto
org.apache.tapestry5.ioc.internal.OperationException: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto [at classpath:org/apache/tapestry5/corelib/components/BeanEditForm.tml, line 2]
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:121)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:88)
	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124)
	at org.apache.tapestry5.internal.structure.ComponentPageElementResourcesImpl.invoke(ComponentPageElementResourcesImpl.java:146)
	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1058)
	at org.apache.tapestry5.internal.services.ComponentEventRequestHandlerImpl.handle(ComponentEventRequestHandlerImpl.java:81)
	at org.apache.tapestry5.internal.services.ImmediateActionRenderResponseFilter.handle(ImmediateActionRenderResponseFilter.java:42)
	at $ComponentEventRequestHandler_12fe514615d210b2.handle(Unknown Source)
	at org.apache.tapestry5.internal.services.AjaxFilter.handle(AjaxFilter.java:42)
	at $ComponentEventRequestHandler_12fe514615d210b2.handle(Unknown Source)
	at org.apache.tapestry5.upload.internal.services.UploadExceptionFilter.handle(UploadExceptionFilter.java:75)
	at $ComponentEventRequestHandler_12fe514615d210b2.handle(Unknown Source)
	at org.apache.tapestry5.services.TapestryModule$41.handle(TapestryModule.java:2476)
	at $ComponentEventRequestHandler_12fe514615d210b2.handle(Unknown Source)
	at $ComponentEventRequestHandler_12fe514615d20f83.handle(Unknown Source)
	at org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handleComponentEvent(ComponentRequestHandlerTerminator.java:43)
	at org.apache.tapestry5.services.InitializeActivePageName.handleComponentEvent(InitializeActivePageName.java:39)
	at $ComponentRequestHandler_12fe514615d20f85.handleComponentEvent(Unknown Source)
	at au.com.myapp.web.services.PageProtectionFilter.handleComponentEvent(PageProtectionFilter.java:86)
	at $ComponentRequestFilter_12fe514615d20f82.handleComponentEvent(Unknown Source)
	at $ComponentRequestHandler_12fe514615d20f85.handleComponentEvent(Unknown Source)
	at $ComponentRequestHandler_12fe514615d20f4b.handleComponentEvent(Unknown Source)
	at org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispatch(ComponentEventDispatcher.java:46)
	at $Dispatcher_12fe514615d20f50.dispatch(Unknown Source)
	at $Dispatcher_12fe514615d20f47.dispatch(Unknown Source)
	at org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:302)
	at org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
	at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902)
	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
	at org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892)
	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
	at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
	at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:105)
	at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:95)
	at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
	at org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:119)
	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
	at au.com.myapp.web.services.AssetProtectionFilter.service(AssetProtectionFilter.java:53)
	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
	at $RequestHandler_12fe514615d20f39.service(Unknown Source)
	at org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:253)
	at org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44)
	at $HttpServletRequestHandler_12fe514615d20f3b.service(Unknown Source)
	at org.got5.tapestry5.jquery.services.AjaxUploadServletRequestFilter.service(AjaxUploadServletRequestFilter.java:26)
	at $HttpServletRequestHandler_12fe514615d20f3b.service(Unknown Source)
	at org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
	at $HttpServletRequestHandler_12fe514615d20f3b.service(Unknown Source)
	at org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
	at $HttpServletRequestFilter_12fe514615d20f35.service(Unknown Source)
	at $HttpServletRequestHandler_12fe514615d20f3b.service(Unknown Source)
	at org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852)
	at $HttpServletRequestHandler_12fe514615d20f3b.service(Unknown Source)
	at $HttpServletRequestHandler_12fe514615d20f34.service(Unknown Source)
	at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
	at org.mortbay.jetty.Server.handle(Server.java:326)
	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:945)
	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
Caused by: org.apache.tapestry5.runtime.ComponentEventException: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto [at classpath:org/apache/tapestry5/corelib/components/BeanEditForm.tml, line 2]
	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1141)
	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$3100(ComponentPageElementImpl.java:61)
	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1062)
	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1059)
	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
	... 70 more
Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto [at classpath:au/com/myapp/web/pages/infra/AppPropertyEditBlocks.tml, line 14]
	at org.apache.tapestry5.corelib.components.Form.executeStoredActions(Form.java:689)
	at org.apache.tapestry5.corelib.components.Form.advised$onAction_12fe514615d20fd4(Form.java:539)
	at org.apache.tapestry5.corelib.components.Form$Invocation_onAction_12fe514615d20fd3.proceedToAdvisedMethod(Unknown Source)
	at org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:84)
	at org.apache.tapestry5.ioc.internal.services.LoggingAdvice.advise(LoggingAdvice.java:37)
	at org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:86)
	at org.apache.tapestry5.corelib.components.Form.onAction(Form.java)
	at org.apache.tapestry5.corelib.components.Form.dispatchComponentEvent(Form.java)
	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:940)
	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1117)
	... 74 more
Caused by: java.lang.IllegalArgumentException: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto
	at org.apache.bval.jsr303.ClassValidator.unrecoverableValidationError(ClassValidator.java:511)
	at org.apache.bval.jsr303.ClassValidator.validateValueImpl(ClassValidator.java:813)
	at org.apache.bval.jsr303.ClassValidator.validateValue(ClassValidator.java:239)
	at org.apache.bval.jsr303.ClassValidator.validateValue(ClassValidator.java:231)
	at org.apache.tapestry5.internal.beanvalidator.BeanFieldValidator.validate(BeanFieldValidator.java:145)
	at org.apache.tapestry5.internal.services.CompositeFieldValidator.validate(CompositeFieldValidator.java:39)
	at org.apache.tapestry5.internal.services.FieldValidationSupportImpl.validate(FieldValidationSupportImpl.java:154)
	at $FieldValidationSupport_12fe514615d2105c.validate(Unknown Source)
	at org.apache.tapestry5.corelib.components.DateField.processSubmission(DateField.java:287)
	at org.apache.tapestry5.corelib.base.AbstractField.processSubmission(AbstractField.java:193)
	at org.apache.tapestry5.corelib.base.AbstractField.access$100(AbstractField.java:37)
	at org.apache.tapestry5.corelib.base.AbstractField$ProcessSubmission.execute(AbstractField.java:95)
	at org.apache.tapestry5.corelib.base.AbstractField$ProcessSubmission.execute(AbstractField.java:89)
	at org.apache.tapestry5.corelib.components.Form.executeStoredActions(Form.java:678)
	... 83 more
Caused by: org.apache.bval.jsr303.IncompatiblePropertyValueException: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto
	at org.apache.bval.jsr303.ClassValidator.validateValueImpl(ClassValidator.java:735)
	... 95 more





Re: Bean validation failing on coerced date

Posted by Geoff Callender <ge...@gmail.com>.
Not a problem. My example was picking up org.apache.bval.jsr303.* (in OpenEJB) instead of the hibernate validator. When I fixed the classpath the problem went away. It doesn't fully explain the symptoms I described, but for now I'm happy.


On 16/05/2013, at 1:04 AM, Geoff Callender wrote:

> Normally I have no problem editing a LocalDate (joda-time) field with BeanEditForm. I use type coercion between LocalDate and java.util.Date, and a PropertyEditBlock, as described here:
> 
> 	http://jumpstart.doublenegative.com.au/jumpstart/examples/lang/propertyeditors
> 
> However, if I add JSR-303 Bean Validation to the property, eg.
> 
> 	@NotNull
> 	private LocalDate testedOn;
> 
> then on submit the server-side throws an exception (stacktrace is below). In debug it looks like the bean validation is receiving the un-coerced Date and complaining because it expects a LocalDate.
> 
> Is anyone else having this problem? Is it a bug?
> 
> I'm using tapestry 5.3.7, tapestry5-jquery-3.3.4, tapestry-bootstrap-2.1.3, hibernate-validator-annotation-processor-4.3.1-Final.
> 
> ERROR [536512858@qtp-984019976-4] (OperationTrackerImpl.java:127) - Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto
> ERROR [536512858@qtp-984019976-4] (OperationTrackerImpl.java:128) - Operations trace:
> ERROR [536512858@qtp-984019976-4] (OperationTrackerImpl.java:137) - [ 1] Triggering event 'action' on sandpit/test/Edit:testform.form
> ERROR [536512858@qtp-984019976-4] (DefaultRequestExceptionHandler.java:63) - Processing of request failed with uncaught exception: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto
> org.apache.tapestry5.ioc.internal.OperationException: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto [at classpath:org/apache/tapestry5/corelib/components/BeanEditForm.tml, line 2]
> 	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.logAndRethrow(OperationTrackerImpl.java:121)
> 	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:88)
> 	at org.apache.tapestry5.ioc.internal.PerThreadOperationTracker.invoke(PerThreadOperationTracker.java:87)
> 	at org.apache.tapestry5.ioc.internal.RegistryImpl.invoke(RegistryImpl.java:1124)
> 	at org.apache.tapestry5.internal.structure.ComponentPageElementResourcesImpl.invoke(ComponentPageElementResourcesImpl.java:146)
> 	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.triggerContextEvent(ComponentPageElementImpl.java:1058)
> 	at org.apache.tapestry5.internal.services.ComponentEventRequestHandlerImpl.handle(ComponentEventRequestHandlerImpl.java:81)
> 	at org.apache.tapestry5.internal.services.ImmediateActionRenderResponseFilter.handle(ImmediateActionRenderResponseFilter.java:42)
> 	at $ComponentEventRequestHandler_12fe514615d210b2.handle(Unknown Source)
> 	at org.apache.tapestry5.internal.services.AjaxFilter.handle(AjaxFilter.java:42)
> 	at $ComponentEventRequestHandler_12fe514615d210b2.handle(Unknown Source)
> 	at org.apache.tapestry5.upload.internal.services.UploadExceptionFilter.handle(UploadExceptionFilter.java:75)
> 	at $ComponentEventRequestHandler_12fe514615d210b2.handle(Unknown Source)
> 	at org.apache.tapestry5.services.TapestryModule$41.handle(TapestryModule.java:2476)
> 	at $ComponentEventRequestHandler_12fe514615d210b2.handle(Unknown Source)
> 	at $ComponentEventRequestHandler_12fe514615d20f83.handle(Unknown Source)
> 	at org.apache.tapestry5.internal.services.ComponentRequestHandlerTerminator.handleComponentEvent(ComponentRequestHandlerTerminator.java:43)
> 	at org.apache.tapestry5.services.InitializeActivePageName.handleComponentEvent(InitializeActivePageName.java:39)
> 	at $ComponentRequestHandler_12fe514615d20f85.handleComponentEvent(Unknown Source)
> 	at au.com.myapp.web.services.PageProtectionFilter.handleComponentEvent(PageProtectionFilter.java:86)
> 	at $ComponentRequestFilter_12fe514615d20f82.handleComponentEvent(Unknown Source)
> 	at $ComponentRequestHandler_12fe514615d20f85.handleComponentEvent(Unknown Source)
> 	at $ComponentRequestHandler_12fe514615d20f4b.handleComponentEvent(Unknown Source)
> 	at org.apache.tapestry5.internal.services.ComponentEventDispatcher.dispatch(ComponentEventDispatcher.java:46)
> 	at $Dispatcher_12fe514615d20f50.dispatch(Unknown Source)
> 	at $Dispatcher_12fe514615d20f47.dispatch(Unknown Source)
> 	at org.apache.tapestry5.services.TapestryModule$RequestHandlerTerminator.service(TapestryModule.java:302)
> 	at org.apache.tapestry5.internal.services.RequestErrorFilter.service(RequestErrorFilter.java:26)
> 	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
> 	at org.apache.tapestry5.services.TapestryModule$3.service(TapestryModule.java:902)
> 	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
> 	at org.apache.tapestry5.services.TapestryModule$2.service(TapestryModule.java:892)
> 	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
> 	at org.apache.tapestry5.internal.services.StaticFilesFilter.service(StaticFilesFilter.java:90)
> 	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
> 	at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:105)
> 	at org.apache.tapestry5.internal.services.CheckForUpdatesFilter$2.invoke(CheckForUpdatesFilter.java:95)
> 	at org.apache.tapestry5.ioc.internal.util.ConcurrentBarrier.withRead(ConcurrentBarrier.java:85)
> 	at org.apache.tapestry5.internal.services.CheckForUpdatesFilter.service(CheckForUpdatesFilter.java:119)
> 	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
> 	at au.com.myapp.web.services.AssetProtectionFilter.service(AssetProtectionFilter.java:53)
> 	at $RequestHandler_12fe514615d20f48.service(Unknown Source)
> 	at $RequestHandler_12fe514615d20f39.service(Unknown Source)
> 	at org.apache.tapestry5.services.TapestryModule$HttpServletRequestHandlerTerminator.service(TapestryModule.java:253)
> 	at org.apache.tapestry5.upload.internal.services.MultipartServletRequestFilter.service(MultipartServletRequestFilter.java:44)
> 	at $HttpServletRequestHandler_12fe514615d20f3b.service(Unknown Source)
> 	at org.got5.tapestry5.jquery.services.AjaxUploadServletRequestFilter.service(AjaxUploadServletRequestFilter.java:26)
> 	at $HttpServletRequestHandler_12fe514615d20f3b.service(Unknown Source)
> 	at org.apache.tapestry5.internal.gzip.GZipFilter.service(GZipFilter.java:53)
> 	at $HttpServletRequestHandler_12fe514615d20f3b.service(Unknown Source)
> 	at org.apache.tapestry5.internal.services.IgnoredPathsFilter.service(IgnoredPathsFilter.java:62)
> 	at $HttpServletRequestFilter_12fe514615d20f35.service(Unknown Source)
> 	at $HttpServletRequestHandler_12fe514615d20f3b.service(Unknown Source)
> 	at org.apache.tapestry5.services.TapestryModule$1.service(TapestryModule.java:852)
> 	at $HttpServletRequestHandler_12fe514615d20f3b.service(Unknown Source)
> 	at $HttpServletRequestHandler_12fe514615d20f34.service(Unknown Source)
> 	at org.apache.tapestry5.TapestryFilter.doFilter(TapestryFilter.java:171)
> 	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
> 	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
> 	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
> 	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
> 	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
> 	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
> 	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
> 	at org.mortbay.jetty.Server.handle(Server.java:326)
> 	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
> 	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:945)
> 	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
> 	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
> 	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
> 	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410)
> 	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
> Caused by: org.apache.tapestry5.runtime.ComponentEventException: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto [at classpath:org/apache/tapestry5/corelib/components/BeanEditForm.tml, line 2]
> 	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1141)
> 	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.access$3100(ComponentPageElementImpl.java:61)
> 	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1062)
> 	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$5.invoke(ComponentPageElementImpl.java:1059)
> 	at org.apache.tapestry5.ioc.internal.OperationTrackerImpl.invoke(OperationTrackerImpl.java:74)
> 	... 70 more
> Caused by: org.apache.tapestry5.ioc.internal.util.TapestryException: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto [at classpath:au/com/myapp/web/pages/infra/AppPropertyEditBlocks.tml, line 14]
> 	at org.apache.tapestry5.corelib.components.Form.executeStoredActions(Form.java:689)
> 	at org.apache.tapestry5.corelib.components.Form.advised$onAction_12fe514615d20fd4(Form.java:539)
> 	at org.apache.tapestry5.corelib.components.Form$Invocation_onAction_12fe514615d20fd3.proceedToAdvisedMethod(Unknown Source)
> 	at org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:84)
> 	at org.apache.tapestry5.ioc.internal.services.LoggingAdvice.advise(LoggingAdvice.java:37)
> 	at org.apache.tapestry5.internal.plastic.AbstractMethodInvocation.proceed(AbstractMethodInvocation.java:86)
> 	at org.apache.tapestry5.corelib.components.Form.onAction(Form.java)
> 	at org.apache.tapestry5.corelib.components.Form.dispatchComponentEvent(Form.java)
> 	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.dispatchEvent(ComponentPageElementImpl.java:940)
> 	at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.processEventTriggering(ComponentPageElementImpl.java:1117)
> 	... 74 more
> Caused by: java.lang.IllegalArgumentException: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto
> 	at org.apache.bval.jsr303.ClassValidator.unrecoverableValidationError(ClassValidator.java:511)
> 	at org.apache.bval.jsr303.ClassValidator.validateValueImpl(ClassValidator.java:813)
> 	at org.apache.bval.jsr303.ClassValidator.validateValue(ClassValidator.java:239)
> 	at org.apache.bval.jsr303.ClassValidator.validateValue(ClassValidator.java:231)
> 	at org.apache.tapestry5.internal.beanvalidator.BeanFieldValidator.validate(BeanFieldValidator.java:145)
> 	at org.apache.tapestry5.internal.services.CompositeFieldValidator.validate(CompositeFieldValidator.java:39)
> 	at org.apache.tapestry5.internal.services.FieldValidationSupportImpl.validate(FieldValidationSupportImpl.java:154)
> 	at $FieldValidationSupport_12fe514615d2105c.validate(Unknown Source)
> 	at org.apache.tapestry5.corelib.components.DateField.processSubmission(DateField.java:287)
> 	at org.apache.tapestry5.corelib.base.AbstractField.processSubmission(AbstractField.java:193)
> 	at org.apache.tapestry5.corelib.base.AbstractField.access$100(AbstractField.java:37)
> 	at org.apache.tapestry5.corelib.base.AbstractField$ProcessSubmission.execute(AbstractField.java:95)
> 	at org.apache.tapestry5.corelib.base.AbstractField$ProcessSubmission.execute(AbstractField.java:89)
> 	at org.apache.tapestry5.corelib.components.Form.executeStoredActions(Form.java:678)
> 	... 83 more
> Caused by: org.apache.bval.jsr303.IncompatiblePropertyValueException: Wed Apr 10 00:00:00 EST 2013 is not a valid value for property testedOn of type class au.com.myapp.business.domain.client.iface.TestDto
> 	at org.apache.bval.jsr303.ClassValidator.validateValueImpl(ClassValidator.java:735)
> 	... 95 more
> 
> 
> 
>