[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-2951) Restrictions.eq when passed null, should create a NullRestriction

Travis Nelson (JIRA) noreply at atlassian.com
Mon Dec 5 16:24:20 EST 2011


    [ http://opensource.atlassian.com/projects/hibernate/browse/HHH-2951?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=44522#comment-44522 ] 

Travis Nelson commented on HHH-2951:
------------------------------------

Was this resolved in later version of Hibernate?  

> Restrictions.eq when passed null, should create a NullRestriction
> -----------------------------------------------------------------
>
>                 Key: HHH-2951
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-2951
>             Project: Hibernate Core
>          Issue Type: Improvement
>          Components: query-criteria
>    Affects Versions: 3.2.1
>            Reporter: David Sheldon
>            Priority: Trivial
>         Attachments: hibernate_restrictions2.patch, hibernate_restrictions.patch
>
>
> If you create a Restriction using eq, and pass null to it, then the generated SQL is  "where foo = null", which always returns false.
> The programmer will almost certainly have intended to get "where foo is null".
> Ideally, we could change:
> 	public static SimpleExpression eq(String propertyName, Object value) {
> 		return new SimpleExpression(propertyName, value, "=");
> 	}
> to 
> 	public static SimpleExpression eq(String propertyName, Object value) {
>             if (value == null) {
>                 return isNull(propertyName);
>             }
>            else {
> 		return new SimpleExpression(propertyName, value, "=");
>           }
> 	}
> Unforunately that wont work, as isNull doesn't return a SimpleExpression. 

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the hibernate-issues mailing list