[hibernate-issues] [Hibernate-JIRA] Issue Comment Edited: (HV-374) NoSuchMethodError on Persistence.getPersistenceUtil() on WebLogic 10.3.3 (11g)

Vitaly Polonetsky (JIRA) noreply at atlassian.com
Wed Sep 29 02:05:57 EDT 2010


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

Vitaly Polonetsky edited comment on HV-374 at 9/29/10 1:05 AM:
---------------------------------------------------------------

Bug related to this issue: HV-286. It was fixed in documentation (when packaging jars manually), but the problem still exists when the applications server is responsible for the dependent jars.

      was (Author: m_vitaly):
    This related bug was fixed in documentation (when packaging jars manually), but the problem still exists when the applications server is responsible for the dependent jars.
  
> NoSuchMethodError on Persistence.getPersistenceUtil() on WebLogic 10.3.3 (11g)
> ------------------------------------------------------------------------------
>
>                 Key: HV-374
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HV-374
>             Project: Hibernate Validator
>          Issue Type: Bug
>    Affects Versions: 4.1.0.Final
>         Environment: WebLogic 10.3.3 (11g)
>            Reporter: Vitaly Polonetsky
>            Assignee: Hardy Ferentschik
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> The latest WebLogic comes with hybrid configuration of JPA 1.0 with some features of JPA 2.0:
> https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&doctype=FAQ&id=1091853.1
> This causes a problem with the way Hibernate Validator checks for existence of JPA 2.0:
> org.hibernate.validator.engine.resolver.DefaultTraversableResolver.detectJPA() checks for existance of javax.persistence.PersistenceUtil class (which exists only in JPA 2.0), but org.hibernate.validator.engine.resolver.JPATraversableResolver will not use it directly, instead it will use javax.persistence.Persistence.getPersistenceUtil() (the class exists for JPA 1.0, but the method is available only at JPA 2.0).
> This check is good for situations where either full JPA 1.0 or full 2.0 implementation is available, but is cases like we have in WebLogic it leads to an Error:
> java.lang.NoSuchMethodError: javax.persistence.Persistence.getPersistenceUtil()Ljavax/persistence/PersistenceUtil; 
> at org.hibernate.validator.engine.resolver.JPATraversableResolver.isReachable(JPATraversableResolver.java:62) 
> at org.hibernate.validator.engine.resolver.DefaultTraversableResolver.isReachable(DefaultTraversableResolver.java:94) 
> at org.hibernate.validator.engine.resolver.SingleThreadCachedTraversableResolver.isReachable(SingleThreadCachedTraversableResolver.java:47) 
> at org.hibernate.validator.engine.ValidatorImpl.isValidationRequired(ValidatorImpl.java:757) 
> at org.hibernate.validator.engine.ValidatorImpl.validateConstraint(ValidatorImpl.java:324) 
> at org.hibernate.validator.engine.ValidatorImpl.validateConstraintsForRedefinedDefaultGroup(ValidatorImpl.java:273) 
> at org.hibernate.validator.engine.ValidatorImpl.validateConstraintsForCurrentGroup(ValidatorImpl.java:256) 
> at org.hibernate.validator.engine.ValidatorImpl.validateInContext(ValidatorImpl.java:210) 
> at org.hibernate.validator.engine.ValidatorImpl.validate(ValidatorImpl.java:119) 
> ...
> I would suggest a possible way to overcome this situation in Hibernate Validator:
> To check for existence of JPA 2.0, check the existence of Persistence.getPersistenceUtil() method, instead of checking for the existence of PersistenceUtil class. This will disable the use of JPA 2.0 features inside HV when the method is not available.

-- 
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