In "Fetching JDO instances from a persistent storage" section, the following code is wrong.
Object personId = pm.newObjectIdInstance(Person.class, "[java.lang.Person,5]");
Person person = (Person)pm.getObjectById(personId, true);
The correct one should be use "[java.lang.Integer,5]".