Reputation: 357
I'm using Realm for Local storage in Android. I'm getting following response form server.
[{
"ListId": 10,
"Names": ["Name1", "Name2", "Name3", "Name4"]
}]
Here is my Model
public class Model extends RealmObject {
private int ListId;
private RealmList<String> Names = new RealmList<String>()
public int getListId() {
return ListId;
}
public void setListId(int listId) {
ListId = listId;
}
public RealmList<String> getNames() {
return Names;
}
public void setNames(RealmList<String> names) {
Names = names;
}
}
And I'm getting this for ArrayList
Type parameter 'java.lang.String' is not within its bound; should extend 'io.realm.RealmObject'.
Thanks.
Upvotes: 12
Views: 22103
Reputation: 3866
Realm version 4.0.0 will add support for RealmList that can contain String, byte[], Boolean, Long, Integer, Short, Byte, Double, Float and Date values.
Please refer to this pull request:
https://github.com/realm/realm-java/pull/5031
And the realm changelog:
https://github.com/realm/realm-java/blob/master/CHANGELOG.md
Upvotes: 8
Reputation: 396
yes it is limitation from realm, you can't create array or list of strings, Please refer to the following link
https://github.com/realm/realm-java/issues/575
Upvotes: 1
Reputation: 20126
RealmLists doesn't support simple strings yet. so you have to wrap each String into its own object:
You can see a work-around here: Gson deserialization of List<String> into realmList<RealmString>
or here: https://realm.io/docs/java/latest/#primitive-lists
Upvotes: 14