Thanks leszek. We are going do what you suggest (the JPA
equivalent).
In order to generate the unique part of the child's key, I'm wondering
if there is a way to use sequence in JPA. In JDO, I think you can do
something like:
Sequence seq = pm.getSequence("child.sequence");
long id = seq.nextValue();
Does anyone know if there is an equivalent to this in JPA, i.e. to
get direct access to a sequence?
Thanks,
Len
On Oct 20, 4:04 am, leszek <[email protected]> wrote:
> Look at the code snippet below:
>
> // entity class
>
> @PersistenceCapable(identityType = IdentityType.APPLICATION)
> public class ChildEnt {
>
> @PrimaryKey
> @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
> // �...@extension(vendorName="datanucleus", key="gae.encoded-
> pk",value="true")
> private Key encodedKey;
>
> private String info;
>
> public Key getEncodedKey() {
> return encodedKey;
> }
>
> public void setEncodedKey(Key encodedKey) {
> this.encodedKey = encodedKey;
> }
>
> public String getInfo() {
> return info;
> }
>
> public void setInfo(String info) {
> this.info = info;
> }
>
> }
>
> // transaction code
>
> PersistenceManager pm = PMF.get().getPersistenceManager();
>
> Key parkey = KeyFactory.createKey("Parent","P01");
>
> ChildEnt e1 = new ChildEnt();
> ChildEnt e2 = new ChildEnt();
> ChildEnt e3 = new ChildEnt();
> Key k1 = KeyFactory.createKey(parkey,ChildEnt.class.getSimpleName(),
> 1);
> Key k2 = KeyFactory.createKey(parkey,ChildEnt.class.getSimpleName(),
> 2);
> Key k3 = KeyFactory.createKey(parkey,ChildEnt.class.getSimpleName(),
> 3);
> e1.setEncodedKey(k1);
> e1.setInfo("info1");
> e2.setEncodedKey(k2);
> e2.setInfo("info2");
> e3.setEncodedKey(k3);
> e3.setInfo("info3");
> pm.currentTransaction().begin();
> pm.makePersistent(e1);
> pm.makePersistent(e2);
> pm.makePersistent(e3);
> pm.currentTransaction().commit();
> 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 [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/google-appengine-java?hl=en
-~----------~----~----~----~------~----~------~--~---