ERROR | Context [/ofbizsetup] startup failed due to previous errors
INFO | No Spring WebApplicationInitializer types detected on classpath
INFO | starts initialization... (configured nodes definition n1:192.168.0.43:12587, failover nodes null)
ERROR | The session manager failed to start
org.apache.catalina.LifecycleException: Failed to start component [de.javakaffee.web.msm.MemcachedBackupSessionManager[/tomahawk]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:153)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5268)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1408)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1398)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NoSuchMethodError: de.javakaffee.web.msm.SuffixLocatorBinaryConnectionFactory.getAuthWaitTime()J
at de.javakaffee.web.msm.SuffixLocatorBinaryConnectionFactory.createMemcachedNode(SuffixLocatorBinaryConnectionFactory.java:116)
at net.spy.memcached.MemcachedConnection.createConnections(MemcachedConnection.java:141)
at net.spy.memcached.MemcachedConnection.<init>(MemcachedConnection.java:128)
at net.spy.memcached.DefaultConnectionFactory.createConnection(DefaultConnectionFactory.java:176)
at net.spy.memcached.MemcachedClient.<init>(MemcachedClient.java:193)
at de.javakaffee.web.msm.MemcachedClientFactory.createMemcachedClient(MemcachedClientFactory.java:53)
at de.javakaffee.web.msm.MemcachedSessionService.createMemcachedClient(MemcachedSessionService.java:505)
at de.javakaffee.web.msm.MemcachedSessionService.startInternal(MemcachedSessionService.java:426)
at de.javakaffee.web.msm.MemcachedBackupSessionManager.startInternal(MemcachedBackupSessionManager.java:518)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
... 8 more
^[[?1;2cERROR | Context [/tomahawk] startup failed due to previous errors
INFO | Starting ProtocolHandler ["ajp-nio-8009"]
INFO | Starting ProtocolHandler ["http-nio2-8080"]
INFO | Starting ProtocolHandler ["http-nio2-8443"]
********************************************************
【问题】
同名方法(createMemcachedNode)存在于两个类中:
1> de.javakaffee.web.msm.SuffixLocatorBinaryConnectionFactory.createMemcachedNode
2> net.spy.memcached.BinaryConnectionFactory.createMemcachedNode
如果调用到BinaryConnectionFactory中的此方法,则没有问题,如果调用到SuffixLocatorBinaryConnectionFactory的方法就会出现【NoSuchMethodError】
net.spy.memcached.MemcachedConnection.createConnections调用
/////////begin/////
private final ConnectionFactory connectionFactory;
MemcachedNode qa = this.connectionFactory.createMemcachedNode(sa, ch, this.bufSize);
/////////end///////
而connectionFactory有多个实现类,如上面的(1)和(2),应该使用(2)就不会有问题。
可以考虑通过jvm参数-D,指定其实现类。
【解决】
经比对,发现jar版本不一致,memcached-session-manager-1.8.2.jar需要用到spymemcached-2.11.1.jar而不是spymemcached-2.8.1.jar。
分享到:
相关推荐
memcached-1.9.6,libevent-2.1.12-stable.tar memcached-session-manager-1.9.6,msm-kryo-serializer-1.9.6.jar,tomcat8.5,实现会话共享
压缩包内的"memcached-session-manager-tc7-tc8-1.9.6"文件可能包含了`memcached-session-manager`的1.9.6版本,包括适用于Tomcat 7和8的配置文件和依赖库。为了使用这个库,开发者需要在Tomcat的`context.xml`或`...
Memcached-session-manager使用说明及相关jar包(tomcat7版) 依照文档部署即可实现多服务器多tomcat session共享,jar包中是tomcat7集成所需要的jar包,序列化工具用的是java默认的序列化工具,若要使用其他版本的...
本lib包包含:javolution-5.5.1.jar、kryo-1.03.jar、kryo-serializers-0.10.jar、memcached-2.5.jar、memcached-session-manager-1.5.1.jar、memcached-session-manager-tc7-1.5.1.jar、minlog-1.2.jar、msm-...
本文将详细介绍如何在Tomcat 7.0.54中集成`memcached-session-manager-1.6.1`,以实现更高效的session管理。 首先,我们需要了解`memcached-session-manager`的基本概念。这个组件由两个主要部分组成:`...
【标题】"Tomcat+memcached-session-manager1.8(MSM)" 是一个针对Tomcat应用服务器的解决方案,用于实现基于Memcached的会话管理。在Web应用中,session是存储用户状态的重要机制,但随着应用的扩展,单一服务器的...
3. **Memcached-session-manager**:这是一个开源项目,用于在Apache Tomcat应用服务器中集成Memcached,以便将用户的会话数据存储在Memcached集群中,以实现高可用性和可扩展性。它提供了一种替代默认的基于文件或...
标题 "nginx集成memcached-session-manager所需要的jar" 涉及到的是将Nginx服务器与MemcachedSessionManager组件结合使用的主题。Nginx是一款高性能的HTTP和反向代理服务器,而Memcached则是一个分布式内存对象缓存...
"memcached-session-manager" 是一个与Web应用程序相关的组件,它主要用于管理用户的会话(session)。Memcached 是一个高性能、分布式内存对象缓存系统,常用于减轻数据库的负载,通过将数据存储在内存中来加速访问...
"tomcat9+tomcat-cluster-redis-session-manager_4.0.zip"这个文件组合涉及到的是在Tomcat 9上实现负载均衡以及使用Redis作为Session管理器的高级配置。 首先,Tomcat 9是Apache Tomcat服务器的一个版本,它是Java ...
描述部分为空,但根据标题可以推测,该教程可能涵盖了如何配置和集成`memcached-session-manager`到Tomcat服务器,以及如何利用这个工具来有效地分发和备份session数据,防止单个服务器故障导致session丢失。...
6. **配置过程**:集成memcached-session-manager到Tomcat通常涉及修改Tomcat的server.xml配置文件,添加必要的memcached服务器地址和端口,以及session相关的配置参数。 7. **测试成功**:在实际部署前,通常需要...
tomcat8+memcached session共享所需的jar包, memcached-session-manager memcached-session-manager-tc8 msm-kryo-serializer spymemcached kryo-serializers所有jar包都有
适应MSM的整合包,有 flexjson-3.3 msm-flexjson-serializer-1.9.6 msm-spymemcached-2.11.3 memcached-session-manager-1.9.6 memcached-session-manager-tc8-1.9.6
在本篇文章中,我们将深入探讨如何使用Nginx、Tomcat和Memcached-Session-Manager(MSM)来构建一个集群环境,并实现Session共享。这涉及到集群搭建、分布式应用以及缓存管理等多个方面的IT知识。下面将详细展开这些...
完全可以根据github的要求来配置,我只是没分了~ 官网地址:https://github.com/magro/memcached-session-manager/wiki/SetupAndConfiguration#add-memcached-session-manager-jars-to-tomcat
memcached-session-manager-1.6.5.jar
memcached-session-manager-tc6-1.6.3.jar
5. `msm-kryo-serializer-1.8.3.jar`:这是Kryo序列化器的扩展,专门为memcached-session-manager提供支持。 6. `reflectasm-1.09.jar`:ReflectASM是一个用于反射的轻量级库,提高了反射操作的性能,可能在Kryo序列...