我有一个Google App Engine项目,我正在尝试在我的API中缓存一些数据。
以下是我尝试在代码中使用缓存的方法
try {
CacheFactory cacheFactory = CacheManager.getInstance()
.getCacheFactory();
cache = cacheFactory.createCache(Collections.emptyMap());
LOG.info("Cache Created");
cache.put(key, value);
} catch (CacheException ex) {
LOG.error("cache exception encountered:{}", ex);
}
我收到以下异常
com.google.apphosting.api.ApiProxy $ CallNotFoundException:无法制作 API调用memcache.Set在一个既不是原始请求的线程中 线程或ThreadManager创建的线程
在 com.google.apphosting.api.ApiProxy $ CallNotFoundException.foreignThread(ApiProxy.java:800) 〜[应用服务引擎的API-1.0-SDK-1.9.54.jar:NA]
在com.google.apphosting.api.ApiProxy $ 1.get(ApiProxy.java:175) 〜[应用服务引擎的API-1.0-SDK-1.9.54.jar:NA]
在com.google.apphosting.api.ApiProxy $ 1.get(ApiProxy.java:172) 〜[应用服务引擎的API-1.0-SDK-1.9.54.jar:NA]
在 com.google.appengine.api.utils.FutureWrapper.get(FutureWrapper.java:89) 〜[应用服务引擎的API-1.0-SDK-1.9.54.jar:NA]
在 com.google.appengine.api.memcache.MemcacheServiceImpl.quietGet(MemcacheServiceImpl.java:26) 〜[应用服务引擎的API-1.0-SDK-1.9.54.jar:NA]
在 com.google.appengine.api.memcache.MemcacheServiceImpl.put(MemcacheServiceImpl.java:69) 〜[应用服务引擎的API-1.0-SDK-1.9.54.jar:NA]
在 com.google.appengine.api.memcache.stdimpl.GCache.put(GCache.java:157) 〜[应用服务引擎的API-1.0-SDK-1.9.54.jar:NA]
我在我的pom中添加的app引擎依赖是
<dependency>
<groupId>com.google.appengine</groupId>
<artifactId>appengine-api-1.0-sdk</artifactId>
<version>1.9.54</version>
</dependency>
我在这里做错了什么。