Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Firebase中将对象保存为子对象有困难(使用Android Studio)_Java_Android_Firebase_Firebase Realtime Database - Fatal编程技术网

Java 在Firebase中将对象保存为子对象有困难(使用Android Studio)

Java 在Firebase中将对象保存为子对象有困难(使用Android Studio),java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,我对Firebase比较陌生。我正试图以编程方式填充数据库,如下图所示,该数据库当前由多个成员组成,每个成员都有一个字符串childId和一个字符串名称 我现在尝试为每个成员添加一个新字段,类型为ChildSocialSkills,这是我创建的自定义Java对象 我当前的Firebase数据库: 已执行以下操作以提交到数据库: ref = FirebaseDatabase.getInstance().getReference().child("Members"); C

我对Firebase比较陌生。我正试图以编程方式填充数据库,如下图所示,该数据库当前由多个成员组成,每个成员都有一个字符串childId和一个字符串名称

我现在尝试为每个成员添加一个新字段,类型为ChildSocialSkills,这是我创建的自定义Java对象

我当前的Firebase数据库:

已执行以下操作以提交到数据库:

        ref = FirebaseDatabase.getInstance().getReference().child("Members");

    Child child = new Child();

    childName = (EditText) findViewById(R.id.childName);
    child.setName(childName.getText().toString().trim());
    child.setChildId();

    //commit to database
    ref.child(childName.getText().toString().trim()).setValue(child);
下面是正在填充到数据库中的子类。可以看出,无论何时创建一个孩子,都会初始化一个新的儿童社会故事

public class Child {
private String name;
private String childId;

private ChildSocialStories socialStory;

public Child () {
    socialStory = new ChildSocialStories();
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public void setChildId() {
    childId = UUID.randomUUID().toString();
}

public String getChildId() {
    return childId;
}

public ChildSocialStories getSocialStory() {
    return socialStory;
}
为了显示所有内容,我将在下面显示ChildSocialStoryClass,它只包含一个默认构造函数:

public class ChildSocialStories {

public ChildSocialStories () {

}}
省略ChildSocialStory时,一切正常,成员已成功添加到Firebase数据库。然而,每当我添加ChildSocialStory时,每次都会出现以下错误

该错误与下面的代码行有关,该行将子项提交到数据库(也可以在上面第一段代码的最后一行看到):

我的目标是成功地将ChildSocialStories的对象添加为“成员”(最终将有自己的其他孩子)的孩子。这有可能吗?任何形式的协助都将不胜感激


提前谢谢

在询问有关堆栈溢出的问题时,请避免添加代码和文本的屏幕截图。将代码和错误文本复制到问题本身中,以便更容易阅读和搜索。请尝试
class Child implements Serializable
@MartinZeitler这不起作用。。。我很难理解你为什么把这篇文章和类似的问题联系起来,因为尽管我分析了类似的问题,但我还没有找到解决问题的办法
ref.child(childName.getText().toString().trim()).setValue(child);