I don't know why it works like that, but when you don't access request with credentials, you are not able to retrieve cells via:
CustomElementCollection elements = listEntry.getCustomElements();
System.out.println(" name=" + elements.getValue("name") + " age=" + elements.getValue("age") );
I've tested it and I have found only this way to retrieve data:
List<ListEntry> list = listFeed.getEntries();
for (ListEntry row : list) {
System.out.println(row.getTitle().getPlainText() + "\t"
+ row.getPlainTextContent());
}
It prints:
Taro age: 23
Hanako age: 16
As you see, you should parse text and retrieve age from raw String
.