使用hibernate-tools时出现java.lang.NoSuchMethodError:net.sf.ehcache.config.CacheConfiguration.isTerracottaClustered()错误
2010-11-16 11:55
706 查看
使用hibernate-tools时出现java.lang.NoSuchMethodError:net.sf.ehcache.config.CacheConfiguration.isTerracottaClustered()错误,具体异常是:
java.lang.NoSuchMethodError: net.sf.ehcache.config.CacheConfiguration.isTerracottaClustered()Z
at net.sf.ehcache.hibernate.HibernateUtil.loadAndCorrectConfiguration(HibernateUtil.java:48)
at net.sf.ehcache.hibernate.EhCacheRegionFactory.start(EhCacheRegionFactory.java:66)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:221)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1341)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
at org.hibernate.console.ConsoleConfiguration$4.execute(ConsoleConfiguration.java:555)
at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:63)
at org.hibernate.console.ConsoleConfiguration.execute(ConsoleConfiguration.java:98)
at org.hibernate.console.ConsoleConfiguration.buildSessionFactory(ConsoleConfiguration.java:550)
at org.hibernate.eclipse.console.workbench.LazySessionFactoryAdapter.getChildren(LazySessionFactoryAdapter.java:43)
at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.getChildren(BasicWorkbenchAdapter.java:100)
at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.fetchDeferredChildren(BasicWorkbenchAdapter.java:106)
at org.eclipse.ui.progress.DeferredTreeContentManager$1.run(DeferredTreeContentManager.java:234)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
通过排查基本上断定是hibernate-tools的3.3.1版本不支持新的ehcache配置方式导致的。因为在我的hibernate.cgf.xml中,使用的是<property name="hibernate.cache.region.factory_class">net.sf.ehcache.hibernate.EhCacheRegionFactory</property>来配置ehcache的,这是ehcache新的配置方式,从异常的层级关系上看,应该是hibernate-tools插件本身不支持这配制方式,改用<property name="hibernate.cache.provider_class">net.sf.ehcache.hibernate.EhCacheProvider</property>来配制后问题解决。
java.lang.NoSuchMethodError: net.sf.ehcache.config.CacheConfiguration.isTerracottaClustered()Z
at net.sf.ehcache.hibernate.HibernateUtil.loadAndCorrectConfiguration(HibernateUtil.java:48)
at net.sf.ehcache.hibernate.EhCacheRegionFactory.start(EhCacheRegionFactory.java:66)
at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:221)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1341)
at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:867)
at org.hibernate.console.ConsoleConfiguration$4.execute(ConsoleConfiguration.java:555)
at org.hibernate.console.execution.DefaultExecutionContext.execute(DefaultExecutionContext.java:63)
at org.hibernate.console.ConsoleConfiguration.execute(ConsoleConfiguration.java:98)
at org.hibernate.console.ConsoleConfiguration.buildSessionFactory(ConsoleConfiguration.java:550)
at org.hibernate.eclipse.console.workbench.LazySessionFactoryAdapter.getChildren(LazySessionFactoryAdapter.java:43)
at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.getChildren(BasicWorkbenchAdapter.java:100)
at org.hibernate.eclipse.console.workbench.BasicWorkbenchAdapter.fetchDeferredChildren(BasicWorkbenchAdapter.java:106)
at org.eclipse.ui.progress.DeferredTreeContentManager$1.run(DeferredTreeContentManager.java:234)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
通过排查基本上断定是hibernate-tools的3.3.1版本不支持新的ehcache配置方式导致的。因为在我的hibernate.cgf.xml中,使用的是<property name="hibernate.cache.region.factory_class">net.sf.ehcache.hibernate.EhCacheRegionFactory</property>来配置ehcache的,这是ehcache新的配置方式,从异常的层级关系上看,应该是hibernate-tools插件本身不支持这配制方式,改用<property name="hibernate.cache.provider_class">net.sf.ehcache.hibernate.EhCacheProvider</property>来配制后问题解决。
相关文章推荐
- nested exception is java.lang.IllegalAccessError: tried to access method net.sf.ehcache.CacheManager.()V from class org.hibernat
- java.lang.IllegalAccessError: tried to access method net.sf.ehcache.CacheManager.()V from class org.hibernate.cache.EhCa
- hibernate Exception in thread "main" java.lang.NoClassDefFoundError: net/sf/ehcache/CacheException
- java.lang.IllegalAccessError: tried to access method net.sf.ehcache.CacheManager 2009-01-07 14:04 22
- java.lang.NoClassDefFoundError: net/sf/ehcache/CacheException
- java的date类型无法读取 出现错误net.sf.json.JSONException: java.lang.reflect.InvocationTargetException
- java.lang.IllegalAccessError: tried to access method net.sf.ehcache.CacheManager
- ehcache-core版本导致异常 tried to access method net.sf.ehcache.config.CacheConfiguration.<init>()V from cl
- java.lang.NoClassDefFoundError: net/sf/ehcache/CacheException
- java.lang.IllegalAccessError: tried to access method net.sf.ehcache.CacheManager.()V
- Maven项目遇到java.lang.NoClassDefFoundError: net/sf/ehcache/CacheException
- hibernate:net.sf.ehcache.config.Configurator#configure : No configuration found. Configuring ehcache from ehcache-failsafe.xml f
- 在使用hibernate 和spring 构架的框架中如果出现Initialization of bean failed; nested exception is java.lang.NoSuchMethodError: org.objectweb.asm
- Caused by: java.lang.ClassNotFoundException: net.sf.ehcache.CacheManager
- hibernate3与ehcache-2.8.3配合使用,在多个SessionFactory实例的情况下出现“Another unnamed CacheManager already exists in the same VM”问题
- 安装sybase出现 找不到JVM错误请使用选项 -is:javahome<JAVA HOME DIR>
- 使用百度地图出现java.lang.UnsatisfiedLinkError错误
- 关于升级ADT22后无法使用jar包、bundle库,出现java.lang.ClassNotFoundException错误的解决
- Spring 整合HIbernate 时, 使用c3p0 数据源 出现 java.lang.NoClassDefFoundError:com.mchange.v2.ser.Indirector
- Android使用achart绘图框架出现java.lang.NoClassDefFoundError错误解决方式