[hibernate-issues] [Hibernate-JIRA] Commented: (HV-228) InvalidateStateException needs to show the error messages in the message when it's thrown

Hardy Ferentschik (JIRA) noreply at atlassian.com
Tue Sep 22 06:24:50 EDT 2009


    [ http://opensource.atlassian.com/projects/hibernate/browse/HV-228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=34009#action_34009 ] 

Hardy Ferentschik commented on HV-228:
--------------------------------------

I am not sure I follow. First of Validator 4.x implements the Bean Validation standadd (JSR 303) so we have to stick to what's defined in there.

That said, the actual validation does not throw exceptions. The various validation methods of javax.validation.Validator all return Set<ConstraintViolation<T>>. The set is empty if the validation is successful otherwise one ConstraintViolation instance per failing constraint is added.

When it comes to integration of Bean Validation into other frameworks, for example JPA , the framework might decide to wrap the constraint violations into an exception. In this case the ConstraintViolationException is recommended which gives access to the violations via getConstraintViolations()

To have the various error messages of the set as part of toString of the ConstraintViolationException, either the integrating framework has to build this error string and pass it to the constructor of the ConstraintViolationException or toString on ConstraintViolationException needs to be overriden. Not sure whether the latter is a good idea, but you could suggest it on the Bean Validation forum - https://forum.hibernate.org/viewforum.php?f=26

> InvalidateStateException needs to show the error messages in the message when it's thrown
> -----------------------------------------------------------------------------------------
>
>                 Key: HV-228
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HV-228
>             Project: Hibernate Validator
>          Issue Type: New Feature
>    Affects Versions: 3.1.0.GA
>            Reporter: Ken Egervari
>   Original Estimate: 1 hour
>  Remaining Estimate: 1 hour
>
> I dunno if you fixed this in 4.0 releases. To make testing easier, I think the error messages should be viewable when the exception is thrown. I know it's possible to inspect the exception for these errors, but within a unit test, this is just too much work and it's annoying.
> In practice, we create all these objects and do tests. Sometimes these objects get sent to the database and are saved. 
> Now, let's say 3 validation constraints aren't met. On the outset, the developer is 100% blind and must code in a try/catch and print out the list of errors. When this happens over and over and over... it's just tedious. When a test fails because an unexpected validation exception is thrown, I don't want to have to do this - I want to instantly see what went wrong so I can make the changes to my test case and run it quickly.
> I think this change would facilitate much faster test/code cycles, and it shouldn't be hard to add in. 
> Thanks

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the hibernate-issues mailing list