-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 
Author Message
 Post subject: exception when using @Min, @Max, etc.
PostPosted: Fri May 02, 2008 4:39 pm 
Newbie

Joined: Fri May 02, 2008 4:26 pm
Posts: 3
Hi,

I'm using Hibernate as my JPA provider. Whenever I use the @Min annotation from hibernate-validator, I get this exception:

Code:
[5/2/08 16:31:00:702 EDT] 00000020 WebApp        E   Exception caught while initializing context
javax.persistence.PersistenceException: org.hibernate.AnnotationException: java.lang.NoSuchMethodException: org.hibernate.validator.ClassValidator.apply(org.hibernate.mapping.PersistentClass)
   at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:258)
   at org.hibernate.ejb.HibernatePersistence.createEntityManagerFactory(HibernatePersistence.java:120)
   at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:83)
   at org.jboss.seam.persistence.EntityManagerFactory.createEntityManagerFactory(EntityManagerFactory.java:85)
   at org.jboss.seam.persistence.EntityManagerFactory.startup(EntityManagerFactory.java:50)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:618)
   at org.jboss.seam.util.Reflections.invoke(Reflections.java:21)
   at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:125)
   at org.jboss.seam.Component.callComponentMethod(Component.java:2090)
   at org.jboss.seam.Component.callCreateMethod(Component.java:2005)
   at org.jboss.seam.Component.newInstance(Component.java:1976)
   at org.jboss.seam.contexts.Contexts.startup(Contexts.java:304)
   at org.jboss.seam.contexts.Contexts.startup(Contexts.java:278)
   at org.jboss.seam.contexts.ServletLifecycle.endInitialization(ServletLifecycle.java:95)
   at org.jboss.seam.init.Initialization.init(Initialization.java:583)
   at org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.java:34)
   at com.ibm.ws.wswebcontainer.webapp.WebApp.notifyServletContextCreated(WebApp.java:906)
   at com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinish(WebApp.java:298)
   at com.ibm.ws.wswebcontainer.webapp.WebApp.initialize(WebApp.java:334)
   at com.ibm.ws.wswebcontainer.webapp.WebGroup.addWebApplication(WebGroup.java:90)
   at com.ibm.ws.wswebcontainer.VirtualHost.addWebApplication(VirtualHost.java:157)
   at com.ibm.ws.wswebcontainer.WebContainer.addWebApp(WebContainer.java:665)
   at com.ibm.ws.wswebcontainer.WebContainer.addWebApplication(WebContainer.java:618)
   at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:395)
   at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:611)
   at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1302)
   at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1165)
   at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:587)
   at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:832)
   at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:951)
   at com.ibm.ws.runtime.component.ApplicationMgrImpl$1.run(ApplicationMgrImpl.java:1493)
   at com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManagerImpl.java:4030)
   at com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextManagerImpl.java:4128)
   at com.ibm.ws.security.core.SecurityContext.runAsSystem(SecurityContext.java:245)
   at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:1498)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:618)
   at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:62)
   at sun.reflect.GeneratedMethodAccessor43.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   at java.lang.reflect.Method.invoke(Method.java:618)
   at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:265)
   at javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1089)
   at javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:971)
   at com.sun.jmx.mbeanserver.DynamicMetaDataImpl.invoke(DynamicMetaDataImpl.java:231)
   at com.sun.jmx.mbeanserver.MetaDataImpl.invoke(MetaDataImpl.java:238)
   at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:833)
   at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:802)
   at com.ibm.ws.management.AdminServiceImpl$1.run(AdminServiceImpl.java:1080)
   at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
   at com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java:973)
   at com.ibm.ws.management.application.sync.StartDeploymentTask.startDeployment(StartDeploymentTask.java:196)
   at com.ibm.ws.management.application.sync.StartDeploymentTask.fullAppUpdate(StartDeploymentTask.java:92)
   at com.ibm.ws.management.application.sync.StartDeploymentTask.performTask(StartDeploymentTask.java:81)
   at com.ibm.ws.management.application.sync.AppBinaryProcessor$AppBinThread.run(AppBinaryProcessor.java:854)
   at com.ibm.ws.management.application.sync.AppBinaryProcessor.postProcess(AppBinaryProcessor.java:605)
   at com.ibm.ws.management.application.sync.AppBinaryProcessor._onChangeCompletion(AppBinaryProcessor.java:415)
   at com.ibm.ws.management.application.sync.AppBinaryProcessor$2.run(AppBinaryProcessor.java:387)
   at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
   at com.ibm.ws.management.application.sync.AppBinaryProcessor.onChangeCompletion(AppBinaryProcessor.java:374)
   at com.ibm.ws.management.repository.FileRepository.postNotify(FileRepository.java:1776)
   at com.ibm.ws.management.repository.FileRepository.update(FileRepository.java:1320)
   at com.ibm.ws.management.repository.client.LocalConfigRepositoryClient.update(LocalConfigRepositoryClient.java:189)
   at com.ibm.ws.sm.workspace.impl.WorkSpaceMasterRepositoryAdapter.update(WorkSpaceMasterRepositoryAdapter.java:637)
   at com.ibm.ws.sm.workspace.impl.RepositoryContextImpl.update(RepositoryContextImpl.java:1882)
   at com.ibm.ws.sm.workspace.impl.RepositoryContextImpl.synch(RepositoryContextImpl.java:1829)
   at com.ibm.ws.sm.workspace.impl.WorkSpaceImpl.synch(WorkSpaceImpl.java:479)
   at com.ibm.ws.management.application.task.ConfigRepoHelper.removeWorkSpace(ConfigRepoHelper.java:154)
   at com.ibm.ws.management.application.SchedulerImpl.cleanup(SchedulerImpl.java:378)
   at com.ibm.ws.management.application.SchedulerImpl.run(SchedulerImpl.java:284)
   at java.lang.Thread.run(Thread.java:810)
Caused by: org.hibernate.AnnotationException: java.lang.NoSuchMethodException: org.hibernate.validator.ClassValidator.apply(org.hibernate.mapping.PersistentClass)
   at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:353)
   at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1115)
   at org.hibernate.ejb.Ejb3Configuration.buildMappings(Ejb3Configuration.java:1269)
   at org.hibernate.ejb.EventListenerConfigurator.configure(EventListenerConfigurator.java:150)
   at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:888)
   at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:186)
   at org.hibernate.ejb.Ejb3Configuration.configure(Ejb3Configuration.java:246)
   ... 75 more
Caused by: java.lang.NoSuchMethodException: org.hibernate.validator.ClassValidator.apply(org.hibernate.mapping.PersistentClass)
   at java.lang.Class.throwNoSuchMethodException(Class.java:274)
   at java.lang.Class.getParameterTypesSignature(Class.java:2045)
   at java.lang.Class.getMethod(Class.java:794)
   at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:347)
   ... 81 more



Whenever I see java.lang.NoSuchMethodException generated by code that uses reflection (in this case org.hibernate.cfg.AnnotationConfiguration.secondPassCompile), I assume that I'm using incompatible jars. But inspecting hibernate-validator 3.0.0.GA does indeed show it contains the method
org.hibernate.validator.ClassValidator.apply(org.hibernate.mapping.PersistentClass).


Any advice greatly appreciated,

mr. orange roughy

Hibernate version:
hibernate.jar 3.2.4.sp1
hibernate-annotations.jar: 3.3.0.GA
hibernate-commons-annotations.jar: 3.0.0.GA
hibernate-entitymanager.jar 3.3.1.GA
hibernate-validator.jar 3.0.0.GA

Name and version of the database you are using:
MySQL 5.x


Top
 Profile  
 
 Post subject:
PostPosted: Sat May 03, 2008 4:50 am 
Newbie

Joined: Fri May 02, 2008 7:40 am
Posts: 5
Usually this kind of exception occurs when there is some kind of JAR collision. Than means - you checked the JAR you wish to use but maybe there is an additional hibernate JAR, of another version, in the classpath.

I would start by searching other hibernate JARs in the classpath (including those belonging to the application server) and verify the JAR you wish to use is indeed the one from which the classes are loaded.


Top
 Profile  
 
 Post subject:
PostPosted: Sat May 03, 2008 5:03 am 
Newbie

Joined: Fri May 02, 2008 7:40 am
Posts: 5
Usually this kind of exception occurs when there is some kind of JAR collision. Than means - you checked the JAR you wish to use but maybe there is an additional hibernate JAR, of another version, in the classpath.

I would start by searching other hibernate JARs in the classpath (including those belonging to the application server) and verify the JAR you wish to use is indeed the one from which the classes are loaded.


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.