2017-04-07 14 views
0

私のクラスの1つでポインタ<の_User>列にcurrentUserを保存しようとしています。これはライブラリ固有の問題です(https://github.com/thiagolocatelli/parse4j/blob/master/src/main/java/org/parse4j/ParseUser.java)。他の誰かが似たような問題を抱えているのではないかと思っています。現在のユーザーをユーザーポインタ列(Parse4J)にオブジェクトとして保存できません。

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:私は私の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) 

は間違ってここで何が起こっているのですか?

答えて

0

これは現在のユーザーを照会するときに機能しますが、これは間違いなく不要な追加呼び出しだと思います。なぜ私の最初の試みが失敗するのか知りたいです...

 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(); 
     } 
関連する問題