Java 无类';com.sun.proxy.$Proxy33';已注册-GAE终结点上的BadRequest
突然间,以前工作的Google App Engine(JAVA)端点开始向我抛出这样的问题:Java 无类';com.sun.proxy.$Proxy33';已注册-GAE终结点上的BadRequest,java,android,google-app-engine,google-cloud-endpoints,Java,Android,Google App Engine,Google Cloud Endpoints,突然间,以前工作的Google App Engine(JAVA)端点开始向我抛出这样的问题: com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request { "code" : 400, "errors" : [ { "domain" : "global", "message" : "java.lang.IllegalArgumentException: No clas
com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request
{
"code" : 400,
"errors" : [ {
"domain" : "global",
"message" : "java.lang.IllegalArgumentException: No class 'com.sun.proxy.$Proxy33' was registered",
"reason" : "badRequest"
} ],
"message" : "java.lang.IllegalArgumentException: No class 'com.sun.proxy.$Proxy33' was registered"
}
我正在从android应用程序执行endpoint方法,如下所示:
CollectionResponseRPlayer response = endpoint.checkResult(gameId, answer, hash).execute();
gameId
是Long
,而答案
和散列
是字符串
我停在execute()
行,预览在gameId
、answer
和hash
中传递的值,以了解为什么这可能是错误的请求。详情如下:
gameId = 8113932860298394396
answer = "KCMR"
hash = "D3C04148ACD9A166E6DBD0268D76AC39CB6C7CEB4B056522522B3551EA28830AFGF129DD89AB4CD6F7375526C796DE031450DF32611ACA1FEB904AB4ECCC3D7CD15CB267F38F10BAE1951RTBBDD3EC110005D67ED82FC5C8EF4E74FF5363D858AFCCAE4EF0A078FB550E833FD527B54"
如您所见,散列字段相当长。这可能是原因吗?
我想不是。GAE中的字符串限制为500个字符,而此哈希值仅为250个字符。另外,我在五月的每个enpoint应用程序中都使用相同的哈希,这是唯一一个造成麻烦的…我使用的是Objectify。问题是由以下原因引起的:
ofy().save().entities(players, user);
显然,我不能同时提供集合和单个实体,所以我用以下方法修复了它:
ofy().save().entities(players);
ofy().save().entity(user);
你好我面临着非常类似的问题。我还使用Objectify保存实体。我已经创建了一个实体:
@Entity public class UserProfile{…}
,但是在上运行之后,我没有看到任何实体http://localhost:8080/_ah/admin/datastore?
。我是否遗漏了任何步骤?在保存配置文件实体时,我也会遇到相同的错误<代码>ObjectifyService.ofy().save().entity(profile).now()代码>