サインアップ機能でユーザーに役割を割り当てようとしています。私は、エラー次取得しています上記のコードを実行しようとするとユーザーをロールに追加する方法
try {
role.save(new CloudRoleCallback() {
@Override
public void done(CloudRole cloudRole, CloudException t) throws CloudException {
if(cloudRole != null){
System.out.println("Adding user role"+ ""+ cloudRole.getRoleName());
userObj.addToRole(role, new CloudUserCallback() {
@Override
public void done(CloudUser cloudUser, CloudException e) throws CloudException {
if(cloudUser != null){
System.out.println("role in role added successfully");
}
if(e != null){
e.printStackTrace();
}
}
});
}
if(t != null){
t.printStackTrace();
}
}
});
}
userObj.signUp(new CloudUserCallback() {
@Override
public void done(CloudUser cloudUser, CloudException e) throws CloudException {
if (cloudUser != null) {
onSignupSuccess();
}
if (e != null) {
e.printStackTrace();
error = e.getMessage();
error = error.substring(error.indexOf(""));
onSignupFailed();
progressDialog.dismiss();
}
}
});
:コードの下に使用して
。
E/AndroidRuntime:致命的な例外:AsyncTask#2 プロセス:情報、PID:967 java.lang.RuntimeException:android.os.AsyncTask $ 3.doneで doInBackground() の実行中にエラーが発生しました(AsyncTask.java:300) at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355) at java.util.concurrent.FutureTask.setException(FutureTask.java:222) at java.util。 concurrent.FutureTask.run(FutureTask.java:242) でandroid.os.AsyncTask $ SerialExecutor $ 1.run(AsyncTask.java:231) でjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) java.util.concurrent.ThreadPoolExecutor $ワーカーで。 (ThreadPoolExecutor.java:587) java.lang.Thread.run(Thread.java:818) によって引き起こされた:java.lang.NullPointerException:仮想を呼び出すしようとしました メソッド 'int java.lang.String.length ) '' null nullオブジェクト参照の場合 at java.io.StringReader。(StringReader.java:47) at io.cloudboost.json.JSONTokener(JSONTokener.java:85) at io.cloudboost.json.JSONObject。( JSO NOBject.java:324) at io.cloudboost.CloudUser.addToRole(CloudUser.java:317) at com.rakesh_kr.msrit_info.SignUp $ signupClass $ 1.done(SignUp.java:149) at io.cloudboost.CloudRole com.rakesh_kr.msrit_info.SignUp $ signupClass.doInBackgroundで com.rakesh_kr.msrit_info.SignUp $ signupClass.doInBackground(SignUp.java:144) で.SAVE(CloudRole.java:83) (SignUp.java:126 ) android.os.AsyncTask $ 2.call(AsyncTask.java:288) java.util.concurrent.FutureTask.run(FutureTask.java:237) android.os.AsyncTask $ SerialExecutor $ 1.run(AsyncTask .java:23 1) でjava.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) でjava.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:587)java.lang.Threadので 。あなた
user.signUp
が後で順番に呼ばれているので、実行(Thread.java:818)
コードはエラーなしで実行されていますが、次のような観察があります。 1. role.saveの後に、私はロールブロットダッシュボード からロールテーブルで作成されたロールを見ることができますが、ユーザーテーブルではロールの値が表示されません。これをチェックしていただけますか? –
すぐにソートされる – egima
@KrRakeshueこの問題は、バックエンドチームによって修正されました – egima