Ignore @NotNull on JPA's @GeneratedValue properties for pre-persist operations

Description

When using NetBeans 7 to generate entity classes from a database table, the entity classes are generated with the following annotations...

When persisting, bean validation fails because the autogenerated primary key is null at the time the object is persisted.

Netbeans have stated that they wont fix this as they see it as bean validation issue rather than their generated classes.

See here: http://netbeans.org/bugzilla/show_bug.cgi?id=197845

Related Forum posting is here...

https://forum.hibernate.org/viewtopic.php?f=9&t=1011908

Suggest modifying Bean Validation Pre-Persist to ignore @NotNull if @GeneratedValue exists.

Thanks
Rich

Environment

Netbeans 7, Seam 3 under JBOSS AS 7

Activity

Show:
Emmanuel Bernard
September 26, 2011, 11:18 PM

I'll raise the issue with the JPA expert group but I am not certain I agree with the NetBeans team on this.

Emmanuel Bernard
September 26, 2011, 11:23 PM

Even if right, how do ignore @NotNull when JPA's provider calls Bean Validation? A generic contract to ignore some constraint annotations based on property name?

David Konecny
May 15, 2012, 12:57 AM

FYI: I commented in NetBeans issue why I think this should be resolved on JPA side - http://netbeans.org/bugzilla/show_bug.cgi?id=197845#c3
It is possible I'm completely wrong here as spec is not very clear to me. Until we reach a consensus I suggest NetBeans do not generate @NotNull constraint as it is causing more harm than help.

Emmanuel Bernard
May 15, 2012, 10:21 AM

I have worked out a proposal at http://beanvalidation.org/proposals/BVAL-234/

Emmanuel Bernard
February 17, 2013, 7:20 PM

Let's experiment with before moving it up at the spec levels.

Assignee

Unassigned

Reporter

Richard Clarke

Labels

Feedback Requested

None

Feedback Requested By

None

backPortable

None

Suitable for new contributors

Yes, likely

Pull Request

None

backportDecision

None

backportReEvaluate

None

Time tracking

0m

Time remaining

8h

Components

Affects versions

Priority

Minor
Configure