にキャストしようとしていたクラスを認識しない:Firebase POJOが機能していない、私は以下のコードを実行すると、私は次のエラーを取得する私は
com.google.firebase.database.DatabaseException: Class java.util.HashMap has generic type parameters, please use GenericTypeIndicator instead.
seniorRef.orderByChild("seniorID").equalTo(caretaker.getSeniorID())
.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot data : dataSnapshot.getChildren()) {
Log.d("senior", data.toString());
Senior senior = data.getValue(Senior.class);
seniorBox.setText(senior.getFirstName() + " " + senior.getLastName());
caretasks(senior);
}
}
奇妙何、このコードは完璧に働いていたということです私が現在取り組んでいるものについては、非常に長い間、シニアクラス(以下)にマイナーチェンジしました。私が昨夜何らかの進歩を遂げたときに働いていましたが、現在はHashMapからシニアに変換することを拒否しています。 (Senior)data.getValue()としてキャストしようとすると、型変換エラーがスローされます。私が間違っていることを教えてください。
public class Senior implements Serializable {
private String seniorID;
private String firstName;
private String lastName;
private String address;
private HashMap<String, HashMap> activities;
public Senior(){}
...
}
編集:同じオブジェクトに対して全く同じクエリを作成する別のクラスがありますが、これはうまく動作します。
現在、データベースに、最近Senior.classに加えた変更と一致しないデータがある可能性はありますか? –
@MacLeanSochor昨日dbに書き込むために 'HashMap activities'パラメータを取得しました。データベースから特定のノードを削除しようとしましたが、エラーが発生しています。 –