Liferay6.2和tomcat7 我有一个portlet应用程序,我在调用我的MemcachedClient类方法。
下面的MemcachedClient类具有创建memcache客户端实例的代码。它设置并获取在memcached中设置和获取值的方法。
portlet只使用此类getter和setter。
import net.spy.memcached.*;
public class MemcachedUtil {
protected static synchronized MemcachedClient getMemcachedClientInstance()
{
memcachedservicePropFile.load(MemcachedServiceUtil.class.getResourceAsStream("memcachedservice.properties"));
memcachedServersPropValue =((String) memcachedservicePropFile.get(MEMCACHED_SERVERS_PROP_NAME))
s_memcachedClientSingleton= new MemcachedClient(new BinaryConnectionFactory(), AddrUtil.getAddresses((memcachedServersPropValue, " "));
return s_memcachedClientSingleton;
}
protected static void setParameterValueInMemcached( String parameterName, String parameterValue)
{
MemcachedClient memcached = getMemcachedClientInstance();
memcached.set(parameterName, 43200, parameterValue);
}
protected static String getParameterValueFromMemcached( String parameterName)
{
MemcachedClient memcached = getMemcachedClientInstance();
String valueFromMemcached = (String)memcached.get(parameterName);
return valueFromMemcached;
}
}
上面的memcached类和prop文件捆绑在一个jar中,并在portlet中使用。
当我在 liferay6.2 / tomcat 中重新部署我的portlet 项目时。它抛出以下错误
org.apache.catalina.loader.WebappClassLoader clearReferencesThreads 严重:Web应用程序[/ testmemcached-portlet]似乎已经启动了一个名为[Memcached IO over {MemcachedConnection to localhost / 127.0.0.1:11211}]的线程,但未能阻止它。这很可能会造成内存泄漏。
我不知道这个错误来自哪里。任何人都可以帮助我。
非常感谢