无法将当前用户保存为用户指针列中的对象 (Parse4J)
Can't save current user as object in User Pointer column (Parse4J)
我正在尝试将 currentUser 保存到我的 类 之一中的 Pointer<_User> 列。这是库特定的问题 (https://github.com/thiagolocatelli/parse4j/blob/master/src/main/java/org/parse4j/ParseUser.java)。我只是想知道是否还有其他人遇到过类似的问题。
ParseUser currentUser = ParseUser.currentUser;
ParseObject sentRequest = new ParseObject(ParseConstantsUtil.CLASS_REQUEST);
sentRequest.put("author", currentUser);
try {
sentRequest.save();
} catch (org.parse4j.ParseException e) {
e.printStackTrace();
}
pom.xml: 我正在使用最新的 SNAPSHOT 构建作为我的 Parse4J 依赖项。
<dependency>
<groupId>com.github.thiagolocatelli</groupId>
<artifactId>parse4j</artifactId>
<version>1.5-SNAPSHOT</version>
</dependency>
异常:
ParseException [code=111, error=schema mismatch for Request.author; expected Pointer<_User> but got Pointer<users>]
at org.parse4j.command.ParseResponse.getParseError(ParseResponse.java:122)
at org.parse4j.command.ParseResponse.getException(ParseResponse.java:78)
at org.parse4j.ParseObject.save(ParseObject.java:486)
at com.test.automation.controller.RequestController.createRequestObject(RequestController.java:119)
at com.test.automation.controller.RequestController.saveRequest(RequestController.java:89)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
这里出了什么问题?
它在您查询当前用户时有效,但我认为这绝对是不必要的额外调用。我很想知道为什么我的第一次尝试失败了...
ParseQuery<ParseObject> userQuery = ParseQuery.getQuery("_User");
userQuery.whereEqualTo("objectId", currentUser.getObjectId());
try {
List<ParseObject> userList = userQuery.find();
for (ParseObject author : userList) {
sentRequest.put("author", author);
try {
sentRequest.save();
} catch (org.parse4j.ParseException e) {
e.printStackTrace();
}
}
} catch (org.parse4j.ParseException e) {
e.printStackTrace();
}
我正在尝试将 currentUser 保存到我的 类 之一中的 Pointer<_User> 列。这是库特定的问题 (https://github.com/thiagolocatelli/parse4j/blob/master/src/main/java/org/parse4j/ParseUser.java)。我只是想知道是否还有其他人遇到过类似的问题。
ParseUser currentUser = ParseUser.currentUser;
ParseObject sentRequest = new ParseObject(ParseConstantsUtil.CLASS_REQUEST);
sentRequest.put("author", currentUser);
try {
sentRequest.save();
} catch (org.parse4j.ParseException e) {
e.printStackTrace();
}
pom.xml: 我正在使用最新的 SNAPSHOT 构建作为我的 Parse4J 依赖项。
<dependency>
<groupId>com.github.thiagolocatelli</groupId>
<artifactId>parse4j</artifactId>
<version>1.5-SNAPSHOT</version>
</dependency>
异常:
ParseException [code=111, error=schema mismatch for Request.author; expected Pointer<_User> but got Pointer<users>]
at org.parse4j.command.ParseResponse.getParseError(ParseResponse.java:122)
at org.parse4j.command.ParseResponse.getException(ParseResponse.java:78)
at org.parse4j.ParseObject.save(ParseObject.java:486)
at com.test.automation.controller.RequestController.createRequestObject(RequestController.java:119)
at com.test.automation.controller.RequestController.saveRequest(RequestController.java:89)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
这里出了什么问题?
它在您查询当前用户时有效,但我认为这绝对是不必要的额外调用。我很想知道为什么我的第一次尝试失败了...
ParseQuery<ParseObject> userQuery = ParseQuery.getQuery("_User");
userQuery.whereEqualTo("objectId", currentUser.getObjectId());
try {
List<ParseObject> userList = userQuery.find();
for (ParseObject author : userList) {
sentRequest.put("author", author);
try {
sentRequest.save();
} catch (org.parse4j.ParseException e) {
e.printStackTrace();
}
}
} catch (org.parse4j.ParseException e) {
e.printStackTrace();
}