Bunny Rabbit
Bunny Rabbit

Reputation: 8411

can't persist jpa entity in app engine

   @Entity
   public class Blobx {

        private String name;
        private BlobKey blobKey;

        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private Key id;

        //getters and setters 
     }
@Entity
public class Userx  {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Key id;
    private String name;
    @OneToMany
    private List<Blobx> blobs;
    //getters and setters 
}

while persiting the above Userx entity object i am encountering

java.lang.IllegalStateException: Field "entities.Userx.blobs" contains a persistable object that isnt persistent, but the field doesnt allow cascade-persist!

Upvotes: 7

Views: 2411

Answers (1)

Pascal Thivent
Pascal Thivent

Reputation: 570595

I think you need to add a cascade attribute so that the JPA provider can cascade persist on the new Blobx added to the blobs. Currently, the JPA provider can't, as reported by the error message. So change it like this (adapt the CascadeType to match your needs):

@OneToMany(cascade = CascadeType.ALL)    
private List<Blobx> blobs;

Upvotes: 13

Related Questions