title: Why do I get "Failed to bounce to type" when I turn JSON from Firebase into Java objects?
body: <p><em>[Disclosure: I am an engineer at Firebase. This question is meant to be a reference question to answer many questions in one go.]</em></p>
  
  <p>I have the following JSON structure in my Firebase database:</p>
  
  <pre><code>{  
    "users": {
      "-Jx5vuRqItEF-7kAgVWy": {
          "handle": "puf",
          "name": "Frank van Puffelen",
          "soId": 209103
      },
      "-Jx5w3IOHD2kRFFgkMbh": {
          "handle": "kato",
          "name": "Kato Wulf",
          "soId": 394010
      },
      "-Jx5x1VWs08Zc5S-0U4p": {
          "handle": "mimming",
          "name": "Jenny Tong",
          "soId": 839465
      }
    }
  }
  </code></pre>
  
  <p>I am reading this with the following code:</p>
  
  <pre><code>private static class User {
      String handle;
      String name;
  
      public String getHandle() { return handle; }
      public String getName() { return name; }
  }
  
  Firebase ref = new Firebase("https://stackoverflow.firebaseio.com/32108969/users");
  
  ref.addListenerForSingleValueEvent(new ValueEventListener() {
      @Override
      public void onDataChange(DataSnapshot usersSnapshot) {
          for (DataSnapshot userSnapshot : usersSnapshot.getChildren()) {
            User user = userSnapshot.getValue(User.class);
            System.out.println(user.toString());
          }
      }
  
      @Override
      public void onCancelled(FirebaseError firebaseError) { }
  });
  </code></pre>
  
  <p>But I get this error:</p>
  
  <blockquote>
    <p>Exception in thread "FirebaseEventTarget" com.firebase.client.FirebaseException: Failed to bounce to type</p>
  </blockquote>
  
  <p>How can I read my users into Java objects?</p>