-
Sub-task
-
Resolution: Done
-
Major
-
None
-
None
-
None
Documentation (preview) about the[ issue:|https://doc-stage.usersys.redhat.com/documentation/en-us/jboss_enterprise_application_platform_continuous_delivery/14/html-single/migration_guide/#migrating_from_hibernate_5_1_to_5_3
]
An abstract (yet working) Hibernate 5.3 PoC rule may be found at https://github.com/emmartins/windup-rulesets/blob/WINDUPRULE-372/rules-reviewed/eap7/eap71/hibernate51-53.windup.xml , which should be broken into multiple rules targeting each concrete Hibernate 5.3 migration issue at https://github.com/hibernate/hibernate-orm/blob/5.3/migration-guide.adoc
Note the example rule reference above should have the EAP Traget set to
<targetTechnology id="eap" versionRange="[7,8)" />
5.2 migration notes: `org.hibernate.HibernateException` now extends `javax.persistence.PersistenceExceptions`. Hibernate methods
that "override" methods from their JPA counterparts now will also throw various JDK defined RuntimeExceptions
(such as `IllegalArgumentException`, `IllegalStateException`, etc) as required by the JPA contract.
Windup rule:
When: If the SessionFactory is built via Hibernate’s native bootstrapping, and org.hibernate.HibernateException or a subclass is referenced by the application (NOTE: list of subclasses can be found at http://docs.jboss.org/hibernate/orm/5.3/javadocs/org/hibernate/HibernateException.html)
Perform: Set hibernate.native_exception_handling_51_compliance configuration property to true.
*Note only a rule can be developed for the second part of the when criteria 'or a subclass......').