[appengine-java] Re: is not persistable
Make sure to close your PersistenceManager instance in getCategories(). Are you seeing the original error or a different stack trace? - Jason On Sun, Sep 6, 2009 at 7:06 AM, Bob L. bob.net2...@gmail.com wrote: Oh mine! It occurred again. JDO looks quite fragile. Is there any wrong with following code? @PersistenceCapable(identityType = IdentityType.APPLICATION) public class Category { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) private Long id; @Persistent private String name; public Category() { } public Category(String name) { this.name = name; } public Long getId() { return id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } serverlet: ... @SuppressWarnings(unchecked) public ListCategory getCategories() { String query = select from + Category.class.getName(); PersistenceManager pm = PMF.get().getPersistenceManager(); try { return (ListCategory) pm.newQuery(query).execute(); } catch (Exception ex) { } return null; } private void initializeCategories() { ListCategory categories = this.getCategories(); if (categories == null || categories.isEmpty()) { categories = new ArrayListCategory(); Category category = new Category(Boys); categories.add(category); category = new Category(Girls); categories.add(category); PersistenceManager pm = PMF.get().getPersistenceManager(); try { pm.makePersistentAll(categories); } finally { pm.close(); } } } ... --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en -~--~~~~--~~--~--~---
[appengine-java] Re: is not persistable
Oh mine! It occurred again. JDO looks quite fragile. Is there any wrong with following code? @PersistenceCapable(identityType = IdentityType.APPLICATION) public class Category { @PrimaryKey @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) private Long id; @Persistent private String name; public Category() { } public Category(String name) { this.name = name; } public Long getId() { return id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } serverlet: ... @SuppressWarnings(unchecked) public ListCategory getCategories() { String query = select from + Category.class.getName(); PersistenceManager pm = PMF.get().getPersistenceManager(); try { return (ListCategory) pm.newQuery(query).execute(); } catch (Exception ex) { } return null; } private void initializeCategories() { ListCategory categories = this.getCategories(); if (categories == null || categories.isEmpty()) { categories = new ArrayListCategory(); Category category = new Category(Boys); categories.add(category); category = new Category(Girls); categories.add(category); PersistenceManager pm = PMF.get().getPersistenceManager(); try { pm.makePersistentAll(categories); } finally { pm.close(); } } } ... --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en -~--~~~~--~~--~--~---
[appengine-java] Re: is not persistable
Oh mine! It occurred again. JDO looks quite fragile. Nothing fragile about the persistence process. You simply have to define your classes as persistent and enhance them, and have the enhanced ones in the CLASSPATH. Not hard --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en -~--~~~~--~~--~--~---
[appengine-java] Re: is not persistable
What a shame! I forgot this line on the class: @PersistenceCapable (identityType = IdentityType.APPLICATION) Thx. On Sep 1, 10:20 pm, Bob L. bob.net2...@gmail.com wrote: 1. It is in CLASSPATH as all classes are in the project. 2. I basically copied from the example, so it should not be a problem about annotations. I don't know how to check hidden by an unenhanced version. Someone said I can find the clues in the debug-level logging, but how can I view them? On Sep 1, 4:14 am, datanucleus andy_jeffer...@yahoo.com wrote: The class The class x.Category is not persistable. This means that it either hasnt been enhanced, or that the enhanced version of the file is not in the CLASSPATH (or is hidden by an unenhanced version), or the Meta-Data/annotations for the class are not found. And when you've checked those 3 things ... you can conclude that one of them is the cause.- Hide quoted text - - Show quoted text - --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en -~--~~~~--~~--~--~---
[appengine-java] Re: is not persistable
The class The class x.Category is not persistable. This means that it either hasnt been enhanced, or that the enhanced version of the file is not in the CLASSPATH (or is hidden by an unenhanced version), or the Meta-Data/annotations for the class are not found. And when you've checked those 3 things ... you can conclude that one of them is the cause. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google App Engine for Java group. To post to this group, send email to google-appengine-java@googlegroups.com To unsubscribe from this group, send email to google-appengine-java+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en -~--~~~~--~~--~--~---