将ehcache服务器从一台机器移动到另一台机器

时间:2012-10-16 22:53:03

标签: ehcache terracotta

我们已经使用ehcache.server.1.0.0.war近一年了。

本周我们搬到了新电脑。我们复制了缓存并相应地更改了ehcache.xml。

但是,新服务器现在无法启动。它抛出错误:

             SEVERE: WSSERVLET11: failed to parse runtime descriptor: java.lang.NoSuchMethodError: org.slf4j.helpers.MessageFormatter.format(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;
             java.lang.NoSuchMethodError: org.slf4j.helpers.MessageFormatter.format(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;
                             at org.slf4j.impl.JDK14LoggerAdapter.warn(JDK14LoggerAdapter.java:429)
                             at net.sf.ehcache.store.DiskStore.deleteIndexIfCorrupt(DiskStore.java:267)
                             at net.sf.ehcache.store.DiskStore.initialiseFiles(DiskStore.java:210)
                             at net.sf.ehcache.store.DiskStore.<init>(DiskStore.java:166)
                             at net.sf.ehcache.store.DiskStore.create(DiskStore.java:187)
                             at net.sf.ehcache.Cache.createDiskStore(Cache.java:1069)
                             at net.sf.ehcache.Cache.initialise(Cache.java:941)
                             at net.sf.ehcache.CacheManager.addCacheNoCheck(CacheManager.java:921)
                             at net.sf.ehcache.CacheManager.addConfiguredCaches(CacheManager.java:607)
                             at net.sf.ehcache.CacheManager.init(CacheManager.java:336)
                             at net.sf.ehcache.CacheManager.<init>(CacheManager.java:276)
                             at net.sf.ehcache.CacheManager.create(CacheManager.java:636)
                             at net.sf.ehcache.CacheManager.getInstance(CacheManager.java:657)
                             at net.sf.ehcache.server.soap.EhcacheWebServiceEndpoint.<init>(EhcacheWebServiceEndpoint.java:71)
                             at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
                             at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)

任何想法都赞赏。

1 个答案:

答案 0 :(得分:0)

 java.lang.NoSuchMethodError: org.slf4j.helpers.MessageFormatter.format(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;

当你的jar的slf4j版本错误时会发生此错误。仔细检查旧服务器上的所有jar版本/大小,并确保它们在新服务器上是相同的。

也是差异。 jar的版本可能在您的新应用服务器系统类路径中,这会干扰您的应用程序类路径。您应该在部署描述符中配置类加载顺序策略(它特定于您正在使用的应用服务器供应商)