Re: [appengine-java] Google Plugin for Eclipse 1.3 plans

2010-02-05 Thread Kasper Hansen
I think it all sounds very good, I've been waiting for these
functionalities. Right now, I'm not using maven in my projects,
manually copying jars from target folders of other maven projects, to
the WEB-INF/lib folder of the GAE app... Sucks !!

I'll give feedback when I've tried the preview.

Cheers,

:-) Kasper

On Thu, Feb 4, 2010 at 8:52 PM, Keith Platfoot kplatf...@google.com wrote:
 Hey all,
 Many of you have reported incompatibilities between the Google Plugin for
 Eclipse and other build systems/project structures, most notably Maven and
 J2EE/Dynamic Web Projects.  For example, issue 1515 (Eclipse plugin requires
 fixed location for war directory) has collected well over 100 stars, and a
 similar one in the GWT issue tracker has attracted a lot of attention as
 well.  Based on this feedback, we've decided to try and address as many of
 the incompatibilities as possible with our upcoming 1.3 release of the
 plugin.  To deliver on that goal, we want to share with your our current
 plans, and also let you know about a preview build that we'll make available
 so you can test the changes for yourself and give us feedback before final
 release.
 Our plans for the 1.3 release include 4 changes designed to make integration
 with Maven and J2EE projects easier:

 The WAR directory can now be configured to be any project-relative path
 (e.g. src/main/webapp if you're using Maven).  You'll also be able to
 specify whether that directory is source-only (typical Maven/J2EE scenario),
 or whether it should also function as the WAR output directory from which to
 run/debug or deploy to App Engine.  If your WAR directory is
 input and output (which will remain the default for new Web App projects),
 the plugin will manage synchronizing the contents of WEB-INF/lib
 WEB-INF/classes with your project's build path and compiled output.
  Otherwise, we'll leave your WAR source directory alone and you'll need to
 specify your WAR output location when launching, deploying, etc (the plugin
 will remember the location once you set it the first time).
 The Web App launch configuration UI is being redesigned to allow you to see,
 and if necessary change, any of the launch arguments.  Previously, we were
 waiting until launch time to set many of these arguments based on heuristics
 that were invisible and inaccessible to you.  Now you'll be in full control
 of how your projects get launched.  Also, we're adding the capability to
 automatically migrate your launch configurations when necessary, for
 example, updating the -javaagent flag when changing App Engine SDKs.
 GWT/App Engine projects will no longer require our SDK library on the
 classpath.  This means Maven users will be able to pull in JAR files from
 their M2 repository as they're accustomed to and the plugin won't mind a
 bit.
 The severity of any problem marker generated by the plugin will be fully
 customizable via an Errors/Warnings preference page (similar to the Java
 Errors/Warnings page), letting you specify either Error, Warning, or Ignore.

 We'll also be including a few smaller features and bug fixes as well.
 What does everyone think about the 4 changes outlined above?  We've been
 testing the plugin against various Maven and J2EE configurations to try to
 ensure that we've eliminated the most critical roadblocks.  However, we're
 very interested in also having you folks take it for a spin before the
 official release date (slated for next month).  We're not quite ready yet,
 but stay tuned for a 1.3 preview build to be made available hopefully in a
 few weeks.  We'll distribute it as a zip file for dropin installation so it
 will come with the standard warnings and caveats (use with a clean Eclipse
 install and workspace, use at your risk, etc.).  However, it will hopefully
 give you a chance to give us any last-minute feedback about our changes
 before the final release.
 Thanks,
 Keith

 --
 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-j...@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.


-- 
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-j...@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.



Re: [appengine-java] how to share local_db.bin to others

2010-02-05 Thread Guillaume Laforge
I'd be curious to know what's the format of that database bin file.
That would perhaps be interesting to be able to create such local dbs
easily, for creating data fixtures for our unit and/or integration
tests.
Is it some form of SQLLite, or some custom object serialization?

Guillaume

On Wed, Feb 3, 2010 at 14:23, dreamy dreamy2c...@gmail.com wrote:
 we have 4 membership in  google app engine project. we code in local
 Machine and manager source by subverion, in devolop ,when some one
 create a record(eg.create a company object) but others membership
 can't use this company object.

  is there any way  to share local_db.bin  to each other  or all
 membership use same local_db.bin ?

 --
 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-j...@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.





-- 
Guillaume Laforge
Groovy Project Manager
Head of Groovy Development at SpringSource
http://www.springsource.com/g2one

-- 
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-j...@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: cron / app versions confusion

2010-02-05 Thread phraktle

Filed as a bug: http://code.google.com/p/googleappengine/issues/detail?id=2725

v.

On Feb 3, 1:34 pm, phraktle phrak...@gmail.com wrote:
 I have no issues with data store or memcache partitioning/versioning.
 I know how to evolve the schema, how to deal with serialization
 changes, applying version numbering schemes if needed, etc...

 My problem is specific to cron jobs: GAE does not dispatch the cron
 invocation to it's proper place. If your active production version
 simply does not have the implementation yet, your cron job scheduled
 in the test version will still be active, but yielding a bunch of
 errors - instead of calling the implementation in test.

 Regards,
   Viktor

 On Feb 3, 1:17 pm, John Patterson jdpatter...@gmail.com wrote:



  Cron jobs always execute against the default version.

  A feature I use a lot to compartmentalise data with Twig is versioned  
  datastores.  It basically just prepends a version number to the  
  Entity kind for all instances stored or queried with that session.  So  
  effectively you have multiple separate name spaces in a single  
  datastore.  This is very handy for upgrading your data schema or  
  starting fresh with a new data version when I update my entire  
  database.  Its undocumented at the moment but if you want more details  
  let me know.

 http://code.google.com/p/twig-persist/

  On 3 Feb 2010, at 17:57, Kasper Hansen wrote:

   Hi,

   It's the same with data. Data is for all versions. I don't want to say
   this is a bug, because in some regards it's nice that data is shared,
   but in other situations it's not. It would be nice to be able to
   compartmentalize an app somehow.

   :-) Kasper

   On Wed, Feb 3, 2010 at 11:40 AM, phraktle phrak...@gmail.com wrote:
   Hi,

   There appears to be a bug - or at least undesired behavior -  
   regarding
   cron jobs. Let's say there's a test and a production (the active)
   version of an app. If you add a cron job to cron.xml in test, one
   would expect that job is bound to that specific version. Instead what
   I'm seeing:

    - the cron job is listed in the GAE administrator for both apps (ie.
   regardless of what you select in the app version dropdown)

    - the cron gets invoked on production - and fails, as that version
   doesn't have the implementation

   For me, this is clearly a problem. The documentation does not specify
   how versions relate to cron jobs... however, the docs imply it's okay
   to run several distinct versions, even with different runtimes (ie.
   mixing java and python). Based on this the only reasonable approach
   would be to bind the cron job to the specific version of the app. One
   also needs this separation to be able to test the cron job's  
   operation
   before going live.

   If running the cron job in the test version is not desired (eg. if
   the same job is already active in production), the developer should
   simply disable it in that version (either in cron.xml, or by detect
   the current version in the job implementation).

   Regards,
    Viktor

   --
   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 
   athttp://groups.google.com/group/google-appengine-java?hl=en
   .

   --
   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 
   athttp://groups.google.com/group/google-appengine-java?hl=en
   .

-- 
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-j...@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 google app engine a real-time cloud?

2010-02-05 Thread smile laugh
would someone be so kind to give me an answer.

thanks

On Feb 4, 1:20 am, smile laugh uni...@gmail.com wrote:
 I have another question.

  to a unique field which cannot have same value, before I insert a
 record , I must check if there is same value in the field.

  it seems impossible to make the constraint in cloud platform.

 because when I insert the record , maybe other one can insert the same
 record at the same time. that will break uniqueness of the field .

 thanks in advance

 laughsmile

-- 
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-j...@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] owned relationship ? - could it be a bug

2010-02-05 Thread aswath satrasala
This is a similar posting I had posted earlier incorrect number of entities
returned.  Hopefully, this posting may be more clean and I will get some
replies.
I have two classes
1) A
2) B
A is in 1 to many relationship with B
@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class A {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
@Extension(vendorName = datanucleus, key=gae.encoded-pk,
value=true)
private String id;

@Persistent
@Extension(vendorName = datanucleus, key=gae.pk-name, value=true)
private String name;
}

@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class B {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
@Extension(vendorName = datanucleus, key = gae.encoded-pk, value =
true)
private String id;

@Persistent
@Extension(vendorName = datanucleus, key = gae.pk-name, value =
true)
private String name;
}

public class BTest extends JDOTestCase {

public void testB() throws Exception {
A a = new A();
a.setName(a);
B b = new B();
b.setName(b);
a.getBList().add(b);

beginTxn();
pm.makePersistent(a);
a = pm.getObjectById(A.class, a.getId());
assertEquals(1, a.getBList().size());
commitTxn();

B b1 = new B();
b1.setName(b1);
beginTxn();
pm.makePersistent(b1);
b1 = pm.getObjectById(B.class, b1.getId());
b1.getId();
commitTxn();
}
}

The test fails at the last line b1.getId()
If any of B entity is in relation with A earlier, then another entity of B
cannot be persisted by itself.

If I move the 2nd transaction to the beginning, the test passes.

-Aswath

-- 
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-j...@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: owned relationship ? - could it be a bug

2010-02-05 Thread aswath satrasala
B list is missing from class A in my previous posting.  Here is the complete
A class...

@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class A {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
@Extension(vendorName = datanucleus, key=gae.encoded-pk,
value=true)
private String id;

@Persistent
@Extension(vendorName = datanucleus, key=gae.pk-name, value=true)
private String name;

@Persistent
private ListB bList ;
}

On Fri, Feb 5, 2010 at 4:32 PM, aswath satrasala aswath.satras...@gmail.com
 wrote:

 This is a similar posting I had posted earlier incorrect number of
 entities returned.  Hopefully, this posting may be more clean and I will
 get some replies.
 I have two classes
 1) A
 2) B
 A is in 1 to many relationship with B
 @PersistenceCapable(identityType = IdentityType.APPLICATION)
 public class A {
 @PrimaryKey
 @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
 @Extension(vendorName = datanucleus, key=gae.encoded-pk,
 value=true)
 private String id;

 @Persistent
 @Extension(vendorName = datanucleus, key=gae.pk-name, value=true)
 private String name;
 }

 @PersistenceCapable(identityType = IdentityType.APPLICATION)
 public class B {
 @PrimaryKey
 @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
 @Extension(vendorName = datanucleus, key = gae.encoded-pk, value =
 true)
 private String id;

 @Persistent
 @Extension(vendorName = datanucleus, key = gae.pk-name, value =
 true)
 private String name;
 }

 public class BTest extends JDOTestCase {

 public void testB() throws Exception {
 A a = new A();
 a.setName(a);
 B b = new B();
 b.setName(b);
 a.getBList().add(b);

 beginTxn();
 pm.makePersistent(a);
 a = pm.getObjectById(A.class, a.getId());
 assertEquals(1, a.getBList().size());
 commitTxn();

 B b1 = new B();
 b1.setName(b1);
 beginTxn();
 pm.makePersistent(b1);
 b1 = pm.getObjectById(B.class, b1.getId());
 b1.getId();
 commitTxn();
 }
 }

 The test fails at the last line b1.getId()
 If any of B entity is in relation with A earlier, then another entity of B
 cannot be persisted by itself.

 If I move the 2nd transaction to the beginning, the test passes.

 -Aswath




-- 
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-j...@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.



Re: [appengine-java] datacenter distribution policies?

2010-02-05 Thread Nick Johnson (Google)
Hi phracktle,

Posts like this may be better suited to the google-appengine group, since
they're not Java specific.

On Thu, Feb 4, 2010 at 7:29 PM, phraktle phrak...@gmail.com wrote:

 Hi,

 Can the Google team please shed some light on the issue of multiple
 datacenters in various geographical locations pertaining GAE? I would
 like to understand what characteristics and what level of guarantees
 to expect from a GAE app, and didn't find any docs or posts on this...

 1. Is static content delivered by a geographically distributed CDN?
 Would make sense for latency and international bandwidth costs.


If you specify caching settings, yes, your content may be cached at the
edges of our network.



 2. Does GAE launch VMs of a single app in multiple datacenters? Same
 as above - latency would be quite bad for some geographical locations
 without this.


No, currently we're single-homed, with failover.



 3. If VMs are distributed, what's the deal with memcache? If it's
 distributed, does/can it split into distinct partitions? How does that
 affect atomic operations, such as increment, or things like grabTail?

 4. If there's geographical distribution, how does it affect Datastore
 performance and latencies?

 My current (disappointing) impression based on latencies is that GAE
 VMs are not geographically distributed, based on the latencies. But
 would be good to get some clear information on this.

 In general, it would be quite useful to be able to monitor VMs better,
 eg. how many VM launches took place, where. This would provide more
 insight into the operation and performance of the app... (This may
 also be a stepping stone toward the pay to keep some VMs warm topic,
 an often requested feature - at least we could see )

 Thanks,
  Viktor

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




-- 
Nick Johnson, Developer Programs Engineer, App Engine
Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number:
368047

-- 
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-j...@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.



Re: [appengine-java] how to share local_db.bin to others

2010-02-05 Thread Chau Huynh
http://code.google.com/appengine/docs/java/howto/unittesting.html#Writing_Datastore_Tests
I wonder if your team members can share same test case
and local_db.bin in each of your environment can have similar record.
I just read it, so please try and advise if it work. Thanks
-Chau

On Wed, Feb 3, 2010 at 8:23 PM, dreamy dreamy2c...@gmail.com wrote:

 we have 4 membership in  google app engine project. we code in local
 Machine and manager source by subverion, in devolop ,when some one
 create a record(eg.create a company object) but others membership
 can't use this company object.

  is there any way  to share local_db.bin  to each other  or all
 membership use same local_db.bin ?

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.



-- 
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-j...@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.



Re: [appengine-java] Re: can't send attachment via Java Mail API supported by GAE

2010-02-05 Thread m seleron
Hi.

I'm sorry for being not able to explain well.
Please try the following sources.

code

MimeMessage msg = new MimeMessage(session);

Multipart mp = new MimeMultipart();

//attachmentPart
MimeBodyPart attachment = new MimeBodyPart();
attachment.setFileName(videoimage.jpeg);
ByteArrayDataSource byteArrayDataSource = new
ByteArrayDataSource(theByteArray, image/jpeg);
javax.activation.DataHandler datahandler = new
javax.activation.DataHandler(byteArrayDataSource);
attachment.setDataHandler(datahandler);
mp.addBodyPart(attachment);

//MessagePart(body)
MimeBodyPart body = new MimeBodyPart();
body.setText(Message_sample); //set message
mp.addBodyPart(body);

msg.setContent(mp);

msg.setFrom(fromIaddress); // set from
msg.addRecipient(Message.RecipientType.TO, toIaddress); // set to
msg.setSubject(subject_sample); //set subject

Transport.send(msg);

/code


I confirm that I received in Gmail.

If it is useless in this method
The value of theByteArray might have to be confirmed.

thanks.


2010/2/5 Nehul neh...@gmail.com:
 Can you please explain what you mean?

 On Feb 4, 6:38 am, seleronm seler...@gmail.com wrote:
 Hi.

 I think that I can transmit if it is shape that stores
 msg and attachement in each Part

 Please try.
 thanks.



 Multi-Part Messages

 I can't send attachment (simple image file) to email but normal text
 email is working.

 code
                             MimeMessage msg = new MimeMessage
 (session);

                         Multipart mp = new MimeMultipart();

                         MimeBodyPart attachment = new MimeBodyPart();
                         attachment.setFileName(videoimage.jpeg);
                         attachment.setContent(theByteArray, image/jpeg);
                         attachment.setText(request.getParameter(msg));

                         mp.addBodyPart(attachment);
                         msg.setContent(mp);

                         msg.setFrom(new InternetAddress
 (neh...@gmail.com,Reply to));
                         msg.addRecipient(Message.RecipientType.TO, new
 InternetAddress(toe,1.3 users));
                         msg.setSubject(request.getParameter(subject));

                         Transport.send(msg);
 /code

 I am using GAE 1.3.0 for Java.

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to google-appengine-java+
 unsubscr...@googlegroups.com.
 For more options, visit this group athttp://groups.google.com/group/google-
 appengine-java?hl=en.

 --
 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-j...@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.



-- 
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-j...@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: How to build a java desktop client for my hosted app engine application ?

2010-02-05 Thread Sean Gilligan
I managed to hack together a Groovy script that seems to do the job.
It has some hardcoded URLs and is pretty ugly, but it seems to work.


On Feb 4, 9:28 pm, Sean Gilligan msgilli...@gmail.com wrote:
 That's a very helpful article.  I used to to get a a Groovy client
 working.  The only problem is that it doesn't seem to work with the
 local server which is currently preventing me from developing
 locally...

 On Feb 4, 12:32 pm, Ikai L (Google) ika...@google.com wrote:



  This article should help:

 http://krasserm.blogspot.com/2010/01/accessing-security-enabled-googl...

  On Mon, Feb 1, 2010 at 3:23 AM, Guwalani Mahendra 

  guwalani.mahen...@gmail.com wrote:
   How to build a java desktop client for my hosted app engine
   application ?

    I have tried to write a code using google client login using that I
   could authenticate google account
    and got auth token. but how should I use this token to authenticate
   my app engine application

   thanks
   Mahendra

   --
   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-j...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2B
unsubscr...@googlegroups.com
   .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.

  --
  Ikai Lan
  Developer Programs Engineer, Google App 
  Enginehttp://googleappengine.blogspot.com|http://twitter.com/app_engine

-- 
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-j...@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.



Re: [appengine-java] Re: vs-accounting.appspot.com - datastore viewer error

2010-02-05 Thread Ikai Lan
The issue is likely related to types that fail validation. Are you using
Phone Number, Link property, or any other special properties?

On Thu, Feb 4, 2010 at 7:25 PM, aswath satrasala aswath.satras...@gmail.com
 wrote:

 My application is running fine.

 I am still getting the datastore viewer error.What can we do in this
 scenario.  How can we get support?

 -Aswath


 On Mon, Feb 1, 2010 at 12:36 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello GAE team,
 I am still not able to use the DataStore viewer for my app-id
 'vs-accounting'

 Thanks
 -Aswath


 On Thu, Jan 28, 2010 at 11:08 AM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Local file:
 datastore-indexes

 !-- Used 2 times in query history --
 datastore-index kind=Tenant ancestor=true source=auto
 property name=tenants_INTEGER_IDX direction=asc/
 /datastore-index

 !-- Used 1 time in query history --
 datastore-index kind=Party ancestor=true source=auto
 property name=partys_INTEGER_IDX direction=asc/
 /datastore-index

 !-- Used 1 time in query history --
 datastore-index kind=SecurityGroup ancestor=true source=auto

 property name=secGrpList_INTEGER_IDX direction=asc/
 /datastore-index

 datastore-index kind=PartyRole ancestor=true source=auto
 property name=partyRoles_INTEGER_IDX direction=asc/
 /datastore-index

 /datastore-indexes


 Production:
 Party   partys_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 PartyRole   partyRoles_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 SecurityGroup   secGrpList_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 Tenant   tenants_INTEGER_IDX ▲
 Includes ancestors

 12hrs ago , the secGrpList_INTEGER_IDX  was not shown on the production
 admin console.  Now, it is showing up.

 The datastore viewer is still responding back error page.

 -Aswath


 On Thu, Jan 28, 2010 at 2:48 AM, Ikai L (Google) ika...@google.comwrote:

 What does you local indexes file look like? Can you post the indexes
 listed in your production admin console?

 On Tue, Jan 26, 2010 at 11:24 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello GAE team,
 Further observations made while testing the app.  I am not able to
 write entities to the datastore.  Upon examining the logs, I found the
 following error.

 com.veersoft.action.CreateTenantAction doCreate: 
 com.google.appengine.api.datastore.DatastoreNeedIndexException:

 no matching index found..
 datastore-index kind=SecurityGroup ancestor=true source=manual
 property name=secGrpList_INTEGER_IDX direction=asc/





 /datastore-index

 The application is fine on the local develpment server.

 -Aswath


 On Tue, Jan 26, 2010 at 8:51 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello,
 My app-id is vs-accounting.

 I login into appengine.google.com. I choose the above application.
 Then I click on the datastore viewer.
 I get the error

  Server Error

 A server error has occurred.

 Return to Applications screen » https://appengine.google.com/

 -Aswath


  --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




  --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




-- 
Ikai Lan
Developer Programs Engineer, Google App Engine
http://googleappengine.blogspot.com | http://twitter.com/app_engine

-- 
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-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For 

[appengine-java] Where to report server down time?

2010-02-05 Thread Bob F
I tried to open http://folkertsfotografie.appspot.com and recieved
Error: Server Error
The server encountered an error and could not complete your request.

If the problem persists, please report your problem and mention this
error message and the query that caused it.

several times.  I followed the link to an app engine page, hoping that
it would be a form to tell either Google or the author (me) that the
application was down.  Is this a frequent occurrence with AppEngine?

Is there a log of application failures like this?

Eventually, the application can up (with no change in code).  My
application is written  in Grails with the AppEngine plugin.

-- 
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-j...@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] Struts2 Project Gives This Error

2010-02-05 Thread Saeed
This Message is only when deploying to appengine. On the PC, the GAE
server runs fine.

Uncaught exception from servlet
java.lang.NullPointerException
at
org.apache.struts2.dispatcher.mapper.DefaultActionMapper.getUriFromActionMapping(DefaultActionMapper.java:
533)
at
org.apache.struts2.dispatcher.ServletActionRedirectResult.execute(ServletActionRedirectResult.java:
172)
at
com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:
362)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
266)
at
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:
165)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:
252)
at
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:
68)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:
122)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:
195)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:
195)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:
179)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:
75)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:
94)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:
235)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:
89)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:
130)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:
267)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:
126)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:
138)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:
87)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:
165)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:
164)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at
com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:
179)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:
237)
at

[appengine-java] Re: Getting the size of a http request?

2010-02-05 Thread armanuj
Thanks, Ikai. For this to work, it seems like content-length should be
set in the http headers of the request. If this is not set by the
posting client, the question is whether there is a mechanism of
detecting the number of bytes transferred (including header and URL
bytes).

On Jan 28, 4:31 am, Ikai L (Google) ika...@google.com wrote:
 Are there places where this isn't reliably set? In my servlet I am calling:

         int contentLength = request.getContentLength();

 This works with the following form:

 form action=/content_length method=POST enctype=multipart/form-data
 input type=file name=somefile /
 input type=text name=sometext /
 input type=submit /
 /form



 On Mon, Jan 25, 2010 at 3:46 AM, armanuj arama...@gmail.com wrote:
  Hello,

  How can one get the byte size of a http request, esp. in the context
  of a Java servlet being used in the Google app. engine? Is there a way
  to do this where the 'Content-Length' is not set (or not reliably set)
  in the get/post headers?

  Appreciate your help in this.

  Thanks,
  Arun

  --
  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-j...@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
  .
  For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.

 --
 Ikai Lan
 Developer Programs Engineer, Google App 
 Enginehttp://googleappengine.blogspot.com|http://twitter.com/app_engine

-- 
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-j...@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: Getting the size of a http request?

2010-02-05 Thread armanuj
One more clarification: in my get or post request, there is no file
upload involved. I just want the total number of bytes transferred in
a GET or a form-based POST request, and this is done by our custom
client application (and not the browser).

Thanks,
Arun

On Jan 28, 4:31 am, Ikai L (Google) ika...@google.com wrote:
 Are there places where this isn't reliably set? In my servlet I am calling:

         int contentLength = request.getContentLength();

 This works with the following form:

 form action=/content_length method=POST enctype=multipart/form-data
 input type=file name=somefile /
 input type=text name=sometext /
 input type=submit /
 /form



 On Mon, Jan 25, 2010 at 3:46 AM, armanuj arama...@gmail.com wrote:
  Hello,

  How can one get the byte size of a http request, esp. in the context
  of a Java servlet being used in the Google app. engine? Is there a way
  to do this where the 'Content-Length' is not set (or not reliably set)
  in the get/post headers?

  Appreciate your help in this.

  Thanks,
  Arun

  --
  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-j...@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
  .
  For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.

 --
 Ikai Lan
 Developer Programs Engineer, Google App 
 Enginehttp://googleappengine.blogspot.com|http://twitter.com/app_engine

-- 
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-j...@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] maven + GAE + Spring

2010-02-05 Thread Omri Cohen
Hi,
I am building a maven+GAE+Spring project, i have a problem:
it seems that GAE plugin ignores eclipse multiple projects as defined in the
.classpath and .project
I have to run mvn install (create jars) and eclipse:eclipse (copy jars to
project-web/WEB-INF/war/) after every change in any resources outside of
project-web.
can anyone advice?
Thanks,
Omri

-- 
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-j...@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] Persisting polymorphic classes using the low level API or Objectify

2010-02-05 Thread Shrikrishna Shrin
Hi,

I am developing an application that requires persisting of different object
categories that are all subclasses of a specific type. Say I have a super
class Vehicle and two subclasses Car extends Vehicle and Ship extends
Vehicle. Ideally what I would like to do is to be able to query across all
Vehicle objects as well as Car and Ship objects separately.

It looks like the PolyModel class  from the app engine Python API does this
( http://code.google.com/appengine/docs/python/datastore/polymodelclass.html
or http://code.google.com/appengine/articles/polymodel.html)

However, from the following thread it seems like this is not (yet?)
supported in the Java API:
http://groups.google.com/group/google-appengine-java/browse_thread/thread/99f9b92322ccf862/7b4a53d780a033cf?lnk=gstq=PolyModel+java#7b4a53d780a033cf

To get around this *limitation* I do something like this

class Vehicle {

String id;



*String vehicleType;* // indicates what the vehicle type is, eg: Car /
Ship.
*Text vehicleData;* // a blob of text that is a String representation of
a JSONObject that contains info specific to a vehicle type.
}

I am aware that one immediate flaw in my approach is that you cannot query
by vehicleType specific fields contained in the vehicleData blob. This is *
*NOT** important for my current app (I only need to query across vehicle
properties but the view on the client side depends on the vehicleType).
However, I am interested in knowing if it is possible to get around this?

The front end for my app uses GWT and basically what it does is it gets
Vehicle objects via RPC and triggers the corresponding presenter  view
based on the vehicleType. Each presenter in turn knows what to do with the
corresponding vehicleData JSON blob.

I am really not sure if this is a good approach and am wondering if there
are any best practices when it comes to persisting polymorphic class
hierarchies.

Am currently using Objectify
(http://code.google.com/p/objectify-appengine/)  for
persistence but there doesn't seem to be any built-in support for
polymorphism as yet.

Thanks,

Krishna

-- 
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-j...@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.



Re: [appengine-java] Re: Incorrect number of entities returned

2010-02-05 Thread Ikai L (Google)
Any chance you can post all the code? This way we can just load it up in our
development environment of choice and run it.

On Thu, Feb 4, 2010 at 7:21 PM, aswath satrasala aswath.satras...@gmail.com
 wrote:

 Any help here...

 Thanks.


 On Wed, Feb 3, 2010 at 5:35 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 I did further investigation on my unittest (code is pasted in my previous
 email).
 The second transaction block is not persisting the SecurityGroup Entity.
 If I add the following line with in txn block,
 securityGroup = pm.getObjectById(SecurityGroup.class,
 securityGroup.getId());

 I see the following in testresults file
 Testcase: testSecurityGroupNotBelongToTenant took 0.239 sec
 Caused an ERROR
 The key value passed to construct a SingleFieldIdentity of type class
 javax.jdo.identity.StringIdentity for class class
 com.veersoft.security.SecurityGroup is null.

 -Aswath


 On Wed, Feb 3, 2010 at 12:11 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello
 Anything wrong here.
 I have two classes Tenant and SecurityGroup.
 * Create Tenant
 * Create SecurityGroup
 * Add SecurityGroup to Tenant
 * Persist.

 * Create another SecurityGroup entity.
 * Persist

 When I query the datastore for SecurityGroup entities, I get back one
 entity instead of two.

 Any ideas?

 Following is the code for the two classes.
 @PersistenceCapable(identityType = IdentityType.APPLICATION)
 public class Tenant {
 @PrimaryKey
 @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
 @Extension(vendorName = datanucleus, key=gae.encoded-pk,
 value=true)
 private String id;

 @Persistent
 @Extension(vendorName = datanucleus, key=gae.pk-name,
 value=true)
 private String name;

 @Persistent
 private ListSecurityGroup secGrpList = new
 ArrayListSecurityGroup();
 }

 @PersistenceCapable(identityType = IdentityType.APPLICATION)
 public class SecurityGroup {

 @PrimaryKey
 @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
 @Extension(vendorName = datanucleus, key = gae.encoded-pk, value
 = true)
 private String id;

 @Persistent
 @Extension(vendorName = datanucleus, key = gae.pk-name, value =
 true)
 private String name;
 }

 Thanks



 On Thu, Jan 28, 2010 at 5:14 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 I have the following unittest code.  I am persisting two SecurityGroup
 entities, one as a child of Tenant and one entity not having any parent.

 beginTxn();
 Tenant tenant = new Tenant();
 SecurityGroup securityGroup = new SecurityGroup();
 securityGroup.setName(PARTYMGRADMIN);
 tenant.getSecGrpList().add(securityGroup);
 pm.makePersistent(tenant);
 commitTxn();

 beginTxn();
 securityGroup = new SecurityGroup();
 securityGroup.setName(PARTYMGRADMIN1);
 pm.makePersistent(securityGroup);
 commitTxn();

 beginTxn();
 Query q = pm.newQuery(SecurityGroup.class);
 ListSecurityGroup results = (ListSecurityGroup) q.execute();
 assertEquals(2, results.size());
 commitTxn();

 I get results.size() as one. I am expecting the results.size() as two

 -Aswath




  --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




-- 
Ikai Lan
Developer Programs Engineer, Google App Engine
http://googleappengine.blogspot.com | http://twitter.com/app_engine

-- 
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-j...@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.



Re: [appengine-java] Re: Getting the size of a http request?

2010-02-05 Thread Ikai L (Google)
It's not going to be pretty, but you can manually get the size using either
getInputStream() or getReader() and just iterating until you get to the end,
incrementing your count by your buffer size each time, then counting the
final result:

http://java.sun.com/products/servlet/2.3/javadoc/javax/servlet/ServletRequest.html

On Fri, Feb 5, 2010 at 3:37 AM, armanuj arun_rama...@yahoo.com wrote:

 One more clarification: in my get or post request, there is no file
 upload involved. I just want the total number of bytes transferred in
 a GET or a form-based POST request, and this is done by our custom
 client application (and not the browser).

 Thanks,
 Arun

 On Jan 28, 4:31 am, Ikai L (Google) ika...@google.com wrote:
  Are there places where this isn't reliably set? In my servlet I am
 calling:
 
  int contentLength = request.getContentLength();
 
  This works with the following form:
 
  form action=/content_length method=POST
 enctype=multipart/form-data
  input type=file name=somefile /
  input type=text name=sometext /
  input type=submit /
  /form
 
 
 
  On Mon, Jan 25, 2010 at 3:46 AM, armanuj arama...@gmail.com wrote:
   Hello,
 
   How can one get the byte size of a http request, esp. in the context
   of a Java servlet being used in the Google app. engine? Is there a way
   to do this where the 'Content-Length' is not set (or not reliably set)
   in the get/post headers?
 
   Appreciate your help in this.
 
   Thanks,
   Arun
 
   --
   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-j...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 google-appengine-java%2bunsubscr...@googlegroups.comgoogle-appengine-java%252bunsubscr...@googlegroups.com
 
   .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.
 
  --
  Ikai Lan
  Developer Programs Engineer, Google App Enginehttp://
 googleappengine.blogspot.com|http://twitter.com/app_engine

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




-- 
Ikai Lan
Developer Programs Engineer, Google App Engine
http://googleappengine.blogspot.com | http://twitter.com/app_engine

-- 
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-j...@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: Google Plugin for Eclipse 1.3 plans

2010-02-05 Thread Philip
This sounds like a good plan and I look forward to testing the new
plug-in.

- Philip


On Feb 4, 2:52 pm, Keith Platfoot kplatf...@google.com wrote:
 Hey all,

 Many of you have reported incompatibilities between the Google Plugin for
 Eclipse and other build systems/project structures, most notably Maven and
 J2EE/Dynamic Web Projects.  For example, issue 1515 (Eclipse plugin requires
 fixed location for war
 directory)http://code.google.com/p/googleappengine/issues/detail?id=1515
 has
 collected well over 100 stars, and a similar one in the GWT issue tracker
 has attracted a lot of attention as well.  Based on this feedback, we've
 decided to try and address as many of the incompatibilities as possible with
 our upcoming 1.3 release of the plugin.  To deliver on that goal, we want to
 share with your our current plans, and also let you know about a preview
 build that we'll make available so you can test the changes for yourself and
 give us feedback before final release.

 Our plans for the 1.3 release include 4 changes designed to make integration
 with Maven and J2EE projects easier:

    1. The WAR directory can now be configured to be *any* project-relative
    path (e.g. src/main/webapp if you're using Maven).  You'll also be able
    to specify whether that directory is source-only (typical Maven/J2EE
    scenario), or whether it should also function as the WAR output directory
    from which to run/debug or deploy to App Engine.  If your WAR directory is
    input *and* output (which will remain the default for new Web App
    projects), the plugin will manage synchronizing the contents of WEB-INF/lib
    WEB-INF/classes with your project's build path and compiled output.
     Otherwise, we'll leave your WAR source directory alone and you'll need to
    specify your WAR output location when launching, deploying, etc (the plugin
    will remember the location once you set it the first time).
    2. The Web App launch configuration UI is being redesigned to allow you
    to see, and if necessary change, *any* of the launch arguments.
     Previously, we were waiting until launch time to set many of these
    arguments based on heuristics that were invisible and inaccessible to you.
     Now you'll be in full control of how your projects get launched.  Also,
    we're adding the capability to automatically migrate your launch
    configurations when necessary, for example, updating the -javaagent flag
    when changing App Engine SDKs.
    3. GWT/App Engine projects will no longer require our SDK library on the
    classpath.  This means Maven users will be able to pull in JAR files from
    their M2 repository as they're accustomed to and the plugin won't mind a
    bit.
    4. The severity of any problem marker generated by the plugin will be
    fully customizable via an Errors/Warnings preference page (similar to the
    Java Errors/Warnings page), letting you specify either Error, Warning, or
    Ignore.

 We'll also be including a few smaller features and bug fixes as well.

 What does everyone think about the 4 changes outlined above?  We've been
 testing the plugin against various Maven and J2EE configurations to try to
 ensure that we've eliminated the most critical roadblocks.  However, we're
 very interested in also having you folks take it for a spin before the
 official release date (slated for next month).  We're not quite ready yet,
 but stay tuned for a 1.3 preview build to be made available hopefully in a
 few weeks.  We'll distribute it as a zip file for dropin
 installationhttp://code.google.com/eclipse/docs/install-from-zip.html
 so
 it will come with the standard warnings and caveats (use with a clean
 Eclipse install and workspace, use at your risk, etc.).  However, it will
 hopefully give you a chance to give us any last-minute feedback about our
 changes before the final release.

 Thanks,

 Keith

-- 
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-j...@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.



Re: [appengine-java] Persisting polymorphic classes using the low level API or Objectify

2010-02-05 Thread John Patterson

Hi Shrikrishna ,

Im not sure about Objectify but Twig supports storing and retrieving  
Polymorphic references.  Your example could be persisted out-of-the- 
box with no extra configuration.


Also Twig does handle querying on VehicleType - although you say that  
this is not yet a requirement.


Currently to query across all vehicle types you would need to issue  
multiple queries and join them.  But this is simple even when your  
results are sorted using the support class SortedMergeIterator.


BTW, to fully support polymorphic queries is actually quite a simple  
extension that I just haven't had the need for yet and so haven't  
written.  If you were willing to hack a patch I would be happy to give  
you some pointers where to start.


http://code.google.com/p/twig-persist/

John

On 5 Feb 2010, at 18:45, Shrikrishna Shrin wrote:


Hi,

I am developing an application that requires persisting of different  
object categories that are all subclasses of a specific type. Say I  
have a super class Vehicle and two subclasses Car extends Vehicle  
and Ship extends Vehicle. Ideally what I would like to do is to be  
able to query across all Vehicle objects as well as Car and Ship  
objects separately.


It looks like the PolyModel class  from the app engine Python API  
does this ( http://code.google.com/appengine/docs/python/datastore/polymodelclass.html 
   or http://code.google.com/appengine/articles/polymodel.html)


However, from the following thread it seems like this is not (yet?)  
supported in the Java API:

http://groups.google.com/group/google-appengine-java/browse_thread/thread/99f9b92322ccf862/7b4a53d780a033cf?lnk=gstq=PolyModel+java#7b4a53d780a033cf

To get around this *limitation* I do something like this

class Vehicle {

String id;



String vehicleType; // indicates what the vehicle type is, eg:  
Car / Ship.
Text vehicleData; // a blob of text that is a String  
representation of a JSONObject that contains info specific to a  
vehicle type.

}

I am aware that one immediate flaw in my approach is that you cannot  
query by vehicleType specific fields contained in the vehicleData  
blob. This is *NOT* important for my current app (I only need to  
query across vehicle properties but the view on the client side  
depends on the vehicleType). However, I am interested in knowing if  
it is possible to get around this?


The front end for my app uses GWT and basically what it does is it  
gets Vehicle objects via RPC and triggers the corresponding  
presenter  view based on the vehicleType. Each presenter in turn  
knows what to do with the corresponding vehicleData JSON blob.



Am currently using Objectify (http://code.google.com/p/objectify-appengine/ 
)  for persistence but there doesn't seem to be any built-in support  
for polymorphism as yet.


Thanks,

Krishna

--
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 
.


--
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-j...@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.



Re: [appengine-java] Re: vs-accounting.appspot.com - datastore viewer error

2010-02-05 Thread Toby Reyelts
You have an empty property of type e-mail, and that makes the datastore
viewer unhappy. You need to either use a different type that can be
non-empty (like String), or have non-empty e-mails.

On Thu, Feb 4, 2010 at 10:25 PM, aswath satrasala 
aswath.satras...@gmail.com wrote:

 My application is running fine.

 I am still getting the datastore viewer error.What can we do in this
 scenario.  How can we get support?

 -Aswath


 On Mon, Feb 1, 2010 at 12:36 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello GAE team,
 I am still not able to use the DataStore viewer for my app-id
 'vs-accounting'

 Thanks
 -Aswath


 On Thu, Jan 28, 2010 at 11:08 AM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Local file:
 datastore-indexes

 !-- Used 2 times in query history --
 datastore-index kind=Tenant ancestor=true source=auto
 property name=tenants_INTEGER_IDX direction=asc/
 /datastore-index

 !-- Used 1 time in query history --
 datastore-index kind=Party ancestor=true source=auto
 property name=partys_INTEGER_IDX direction=asc/
 /datastore-index

 !-- Used 1 time in query history --
 datastore-index kind=SecurityGroup ancestor=true source=auto

 property name=secGrpList_INTEGER_IDX direction=asc/
 /datastore-index

 datastore-index kind=PartyRole ancestor=true source=auto
 property name=partyRoles_INTEGER_IDX direction=asc/
 /datastore-index

 /datastore-indexes


 Production:
 Party   partys_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 PartyRole   partyRoles_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 SecurityGroup   secGrpList_INTEGER_IDX ▲
 Includes ancestors
   *Serving*
 Tenant   tenants_INTEGER_IDX ▲
 Includes ancestors

 12hrs ago , the secGrpList_INTEGER_IDX  was not shown on the production
 admin console.  Now, it is showing up.

 The datastore viewer is still responding back error page.

 -Aswath


 On Thu, Jan 28, 2010 at 2:48 AM, Ikai L (Google) ika...@google.comwrote:

 What does you local indexes file look like? Can you post the indexes
 listed in your production admin console?

 On Tue, Jan 26, 2010 at 11:24 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello GAE team,
 Further observations made while testing the app.  I am not able to
 write entities to the datastore.  Upon examining the logs, I found the
 following error.

 com.veersoft.action.CreateTenantAction doCreate: 
 com.google.appengine.api.datastore.DatastoreNeedIndexException:

 no matching index found..
 datastore-index kind=SecurityGroup ancestor=true source=manual
 property name=secGrpList_INTEGER_IDX direction=asc/






 /datastore-index

 The application is fine on the local develpment server.

 -Aswath


 On Tue, Jan 26, 2010 at 8:51 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello,
 My app-id is vs-accounting.

 I login into appengine.google.com. I choose the above application.
 Then I click on the datastore viewer.
 I get the error

  Server Error

 A server error has occurred.

 Return to Applications screen » https://appengine.google.com/

 -Aswath


  --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




  --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


-- 
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-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 

[appengine-java] Are you using multiple app versions and a mixture of java and python in GAE?

2010-02-05 Thread Houston startup coder
You can essentially gain the ability to deploy multiple applications
around a single datastore if you deploy multiple versions of your app
that have different code from each other.  I'm curious as to how many
of you are doing this and how positive your experience has been so
far.

Right now, we have a lot of data processing code written in Java that
we could easily split up into at least a couple of applications that
run in the background and don't need to be synchronous with the user
interface.  I'm considering leaving that all in Java and then writing
the user interface in a separate Django or Gaelyk app to minimize boot
times of all the various apps.

I'd love to hear a bit of your story if you're deploying multiple
codebases for a single datastore...

Thanks!

-- 
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-j...@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.



Re: [appengine-java] Are you using multiple app versions and a mixture of java and python in GAE?

2010-02-05 Thread John Patterson
Hi, I split my original app into an admin app and a user app for  
exactly the reason you gave - reduced start up time.  In my case it  
more than halved the load time of the public facing app.


I share code between the two Eclipse projects using symlinks to the  
source folders.  This saves a lot of time keeping the code synced and  
works well with the Eclipse plugins one-app-per-project concept.


Because I am still refining my data model I need to upgrade the data a  
lot which is time consuming.  So I bump up the schema version number  
(a Twig feature) upload just the updated admin app and process the  
data in the new format.  When thats complete - maybe 8 hours later - I  
update the live version of the user app to use the new schema version  
number.


John

On 6 Feb 2010, at 02:42, Houston startup coder wrote:


You can essentially gain the ability to deploy multiple applications
around a single datastore if you deploy multiple versions of your app
that have different code from each other.  I'm curious as to how many
of you are doing this and how positive your experience has been so
far.

Right now, we have a lot of data processing code written in Java that
we could easily split up into at least a couple of applications that
run in the background and don't need to be synchronous with the user
interface.  I'm considering leaving that all in Java and then writing
the user interface in a separate Django or Gaelyk app to minimize boot
times of all the various apps.

I'd love to hear a bit of your story if you're deploying multiple
codebases for a single datastore...

Thanks!

--
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 
.




--
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-j...@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.



Re: [appengine-java] Re: production memcache grabTail namespace isolation broken

2010-02-05 Thread Ikai L (Google)
Hey Viktor,

I've been doing a bunch of research on this and it turns out my original
post was incorrect. Unlike the version of Memcached that is out in the wild,
the version of Memcached being used for App Engine *does* provide namespaced
partitioning and nested namespace partitioning, with LRU expiration
implemented both globally and per namespace (not 100% sure about namespaces
deeper than root + 1). What this allows is constant time namespace flushing,
among other security features. This is the mechanism that allows App Engine
developers to all use Memcache without trampling over each others' data and
is more sophisticated than prefixing a key - allowing us to track usage per
user without have to iterate over a key range.

I'm going to file a bug internally against this mirroring your bug report.
It's possible we just haven't exposed the interface for nested LRU grabTail
correctly. I'll update the external bug if I hear anything.

On Thu, Feb 4, 2010 at 1:17 AM, phraktle phrak...@gmail.com wrote:

 Hi Ikai,

 Any updates? (I see there's a mention of adding grabTail in the 1.3.1
 release notes - though it has been there in 1.3.0 already)

 In the meantime, I have implemented the queue with a head/tail
 pointer, using the increment call... This works, but if grabTail
 worked as advertised, that would be more elegant.

 Regards,
  Viktor


 On Feb 2, 7:28 pm, Ikai L (Google) ika...@google.com wrote:
  That's interesting. Let me follow up with the team to try to understand
 how
  this is supposed to work.
 
 
 
 
 
  On Tue, Feb 2, 2010 at 12:05 AM, phraktle phrak...@gmail.com wrote:
 
   Plus, it's working okay in the development server :)
 
   V.
 
   On Feb 2, 9:03 am, phraktle phrak...@gmail.com wrote:
Hi,
 
In this case grabTail would be quite useless, as one cannot really
construct queues with it (ie. it would just force removing items from
all namespaces that wouldn't even expire otherwise). The
 documentation
also implies that there's a separate LRU list per namespace, which
does make sense, but is not what's happening in production:
 
   http://code.google.com/appengine/docs/java/javadoc/com/google/appengi
 ..
   .)
 
Grabs (atomically get and delete) items off the tail of LRU list.
This can be used to implement queue system with high throughput and
low latency, but low reliability. Current namespace should be set and
not empty for the service. For each namespace memcache maintains a
separate LRU list.
 
Regards,
  Viktor
 
On Feb 1, 9:22 pm, Ikai L (Google) ika...@google.com wrote:
 
 I'll raise the issue with some other members of the team, but it
 seems
   like
 this is working as expected. A memcache namespace is nothing more
 than
   a
 prefix applied to a memcache key. There's no true partitioning
   mechanism
 within memcache. grabTail simply returns the item that would be
 expired
   by
 the LRU mechanism if memcache needed more space. There isn't a
   different
 queue per namespace, only a queue for global expirations.
 
 On Mon, Feb 1, 2010 at 4:29 AM, phraktle phrak...@gmail.com
 wrote:
  Hi,
 
  On production, grabTail returns objects from other namespaces.
 This
   is
  a significant problem that
  makes grabTail (thus queue-like usage) unusable.
 
  I filed this as a bug, with a very simple example here:
 http://code.google.com/p/googleappengine/issues/detail?id=2706
 
  Can you please look into this? I don't even see a workaround that
 I
  can implement in the meantime...
 
  Thanks,
   Viktor
 
  --
  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-j...@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.comgoogle-appengine-java%2B
 unsubscr...@googlegroups.comgoogle-appengine-java%2B
   unsubscr...@googlegroups.com
  .
  For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.
 
 --
 Ikai Lan
 Developer Programs Engineer, Google App Enginehttp://
   googleappengine.blogspot.com|http://twitter.com/app_engine
 
   --
   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-j...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.comgoogle-appengine-java%2B
 unsubscr...@googlegroups.com
   .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.
 
  --
  Ikai Lan
  Developer Programs Engineer, Google App Enginehttp://
 

[appengine-java] Re: datacenter distribution policies?

2010-02-05 Thread phraktle
Hi,

Thanks. I have filed an enhancement request to support multiple
datacenters. Please vote if you'd like to see improved latencies :)

http://code.google.com/p/googleappengine/issues/detail?id=

GAE apps are currently pinned to one datacenter (with failover).
Please provide an option for VMs in
multiple locations in the world to keep request latencies low. Current
round-trip times of requests
are really high from many locations (on a simple http ping ~100ms in
the  US, ~200ms in EU -
presumably higher from Asia). Presumably this would also reduce
bandwidth costs for Google.

This may introduce some new consistency issues to be aware of (eg.
memcache would need to split,
the DS eventual consistency may become more eventual, etc), but
would still be quite simple to
manage for developers.

(As a simpler workaround, being able to configure the geographical
location for an app would be
helpful - at least one could partition the app by geography with
different URLs).

Thanks,
  Viktor


On Feb 5, 1:42 pm, Nick Johnson (Google) nick.john...@google.com
wrote:
 Hi phracktle,

 Posts like this may be better suited to the google-appengine group, since
 they're not Java specific.

 On Thu, Feb 4, 2010 at 7:29 PM, phraktle phrak...@gmail.com wrote:
  Hi,

  Can the Google team please shed some light on the issue of multiple
  datacenters in various geographical locations pertaining GAE? I would
  like to understand what characteristics and what level of guarantees
  to expect from a GAE app, and didn't find any docs or posts on this...

  1. Is static content delivered by a geographically distributed CDN?
  Would make sense for latency and international bandwidth costs.

 If you specify caching settings, yes, your content may be cached at the
 edges of our network.



  2. Does GAE launch VMs of a single app in multiple datacenters? Same
  as above - latency would be quite bad for some geographical locations
  without this.

 No, currently we're single-homed, with failover.







  3. If VMs are distributed, what's the deal with memcache? If it's
  distributed, does/can it split into distinct partitions? How does that
  affect atomic operations, such as increment, or things like grabTail?

  4. If there's geographical distribution, how does it affect Datastore
  performance and latencies?

  My current (disappointing) impression based on latencies is that GAE
  VMs are not geographically distributed, based on the latencies. But
  would be good to get some clear information on this.

  In general, it would be quite useful to be able to monitor VMs better,
  eg. how many VM launches took place, where. This would provide more
  insight into the operation and performance of the app... (This may
  also be a stepping stone toward the pay to keep some VMs warm topic,
  an often requested feature - at least we could see )

  Thanks,
   Viktor

  --
  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-j...@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2B 
  unsubscr...@googlegroups.com
  .
  For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.

 --
 Nick Johnson, Developer Programs Engineer, App Engine
 Google Ireland Ltd. :: Registered in Dublin, Ireland, Registration Number:
 368047

-- 
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-j...@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.



Re: [appengine-java] Re: queue task timeout

2010-02-05 Thread AJ Chen
This must be it since timeout occurs only when multiple tasks are fired at
the same time. thanks,
-aj

On Thu, Feb 4, 2010 at 6:11 PM, cowper iamco...@gmail.com wrote:

 I believe that this may be due to the fact that the URL you are
 requesting is on the local SDK server, which is single threaded and as
 you are already using the only thread for the original request you get
 the timeout ...

 On Feb 1, 11:23 pm, AJ Chen ajc...@web2express.org wrote:
  I'm using queued tasks to fetch feeds, one feed per task. each task takes
  about a couple of seconds. but, the tasks get unexpected timeout easily
 with
  the following error message. any idea how task timeout happens? is it
  possible to control the timeout period?  thanks,
 
  Feb 2, 2010 7:00:54 AM org.quartz.core.JobRunShell run
  SEVERE: Job feed-fetch.task4 threw an unhandled Exception:
  com.google.apphosting.api.ApiProxy$ApplicationException:
 ApplicationError:
  2: Received exception executing http method POST against URLhttp://
 127.0.0.1:/task:Timeout waiting for connection
  at
 
 com.google.appengine.api.urlfetch.dev.LocalURLFetchService.fetch(LocalURLFetchService.java:223)
  at
 
 com.google.appengine.api.labs.taskqueue.dev.UrlFetchJob.execute(UrlFetchJob.java:53)
  at
 
 com.google.appengine.api.labs.taskqueue.dev.UrlFetchJob.execute(UrlFetchJob.java:46)
  at org.quartz.core.JobRunShell.run(JobRunShell.java:195)
  at
 
 org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520)
 
  -aj--
  AJ Chen, PhD
  Chair, Semantic Web SIG, sdforum.orghttp://web2express.org
  @web2express on twitter
  Palo Alto, CA, USA
  650-283-4091
  *Monitoring social media in real time*

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




-- 
AJ Chen, PhD
Chair, Semantic Web SIG, sdforum.org
http://web2express.org
@web2express on twitter
Palo Alto, CA, USA
650-283-4091
*Monitoring social media in real time*

-- 
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-j...@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] Best option to scope transactions for fast RPC calls

2010-02-05 Thread Bourke Floyd IV
I'm working on a RPC like service and I was wondering if I picked the
right method to implement my classes that I'll be persisting to the
datastore. Also note that I allow users to create their own keys used
to lookup their data.

Currently I have a MerchantClass Entity that holds my merchants and a
DataWrapper Entity that holds the data they are looking for. Several
merchants could be making requests at the same time, and as I
understand it could cause (read/write) transactions to fail. I don't
have any relationships at the moment because I don't want opening a
Transaction on the MerchantClass Entity to prevent read/writes to the
DataWrapper Entities. However, I do want to limit the scope in a more
modular way to keep a merchants transactions from interfering with
other merchants transactions.

My overall goal is speed if I just need to keep it simple. Currently I
can get a merchant and verify their status, then get their requested
transaction without any problems. But I merchants can't register two
transactions with the same key, and I'm a little worried that one
merchant could interfere with the success of another merchants
successful transactions.

Thanks for input!

-- 
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-j...@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] Russian documentation omission

2010-02-05 Thread Andrei
i am reading docs in English and by accident took a look at russian
version
russian version seems to be missing XMPP part

-- 
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-j...@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: Can't run the Java version of GAE.

2010-02-05 Thread Tordek
On Feb 2, 11:38 pm, seleronm seler...@gmail.com wrote:

 Please refer to the following 
 linkshttp://bugs.debian.org/cgi-bin/bugreport.cgi?bug=560044

Awesome, this has fixed it. Thank you very much!

 Please Try.
 thanks.

--
Tordek

-- 
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-j...@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] Problems with Spring and GAE.

2010-02-05 Thread Mariano Cortesi
Hi!!

I'm a newbie with GAE... and I was just testing an web app we made and
we got the following error:

Failed startup of context
com.google.apphosting.utils.jetty.runtimeappenginewebappcont...@d36ff3{/,/base/data/home/apps/askme-test/1.339677427231250825}
java.security.AccessControlException: access denied
(java.lang.RuntimePermission getClassLoader)
at 
java.security.AccessControlContext.checkPermission(AccessControlContext.java:355)
at 
java.security.AccessController.checkPermission(AccessController.java:567)
at java.lang.SecurityManager.checkPermission(Unknown Source)
at 
com.google.apphosting.runtime.security.CustomSecurityManager.checkPermission(CustomSecurityManager.java:45)
at java.lang.ClassLoader.getSystemClassLoader(Unknown Source)
at 
org.springframework.beans.BeanUtils.findEditorByConvention(BeanUtils.java:392)
at 
org.springframework.beans.TypeConverterDelegate.findDefaultEditor(TypeConverterDelegate.java:360)
at 
org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:213)
at 
org.springframework.beans.TypeConverterDelegate.convertIfNecessary(TypeConverterDelegate.java:104)
at 
org.springframework.beans.BeanWrapperImpl.convertIfNecessary(BeanWrapperImpl.java:419)
at 
org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:657)
at 
org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:192)
at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:984)
at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:886)
at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:479)
at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:450)
at 
org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:290)
at 
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at 
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:287)
at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:189)
at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:557)
at 
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:842)
at 
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:416)
at 
org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:261)
at 
org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:192)
at 
org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
at 
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:530)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:135)
at 
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1218)
at 
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:500)
at 
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)
at 
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:40)
at 
com.google.apphosting.runtime.jetty.AppVersionHandlerMap.createHandler(AppVersionHandlerMap.java:191)
at 
com.google.apphosting.runtime.jetty.AppVersionHandlerMap.getHandler(AppVersionHandlerMap.java:168)
at 
com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:123)
at 
com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:235)
at 
com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5235)
at 
com.google.apphosting.base.RuntimePb$EvaluationRuntime$6.handleBlockingRequest(RuntimePb.java:5233)
at 
com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:24)
at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:363)
at com.google.net.rpc.impl.Server$2.run(Server.java:838)
at 
com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:56)
at 

Re: [appengine-java] dynamic class load

2010-02-05 Thread enes akar
Thanks Ikai, but I wrote Groovy classes and whenever I save the file Eclipse
wants to restart. Probably because of interpretation phase of Groovy
classes. Anyway is there a way to handle the situation. Thanks in advance..

On Wed, Feb 3, 2010 at 2:43 AM, Ikai L (Google) ika...@google.com wrote:

 Yes. Run your server using Debug. Eclipse will automatically compile your
 classes on save.

 The only exception is certain types of changes to classes that need to be
 enhanced after compilation. Eclipse will prompt you to restart.

 On Tue, Feb 2, 2010 at 4:04 PM, javaness enesa...@gmail.com wrote:

 Hi;

 I am trying Java on Eclipse by App engine plugin.

 Is it possible to dynamically load classes? (maybe hot-swapping is the
 correct term)

 In an another project, I use Jetty plugin of Maven, and whenever I
 compile a java class, Jetty automically loads it.
 So no restart is needed on code modifications.

 Is that possible on Eclipse configuration of App Engine.

 Thanks;

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




-- 
Enes Akar
http://www.linkedin.com/pub/enes-akar/7/835/3aa

-- 
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-j...@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: production memcache grabTail namespace isolation broken

2010-02-05 Thread Peter Liu
Hi Ikai,

If the grab tail do intend to only return objects belong to a specific
namespace,
it will be nice if the memchace clear all function only delete
objects in a specific namespace as well.

At first I thought the clear all don't respect namespace is due to
memcache implementation constraint.
But if grab tail can respect namespace, there's no reason why clear
all can't respect namespace right?

It will be very helpful if we can flush a specific type of objects
(that belong to same namespace) in memcache.
Right now we either flush everything or maintain a set of keys and do
a delete all.

Thanks.

On Feb 5, 12:04 pm, Ikai L (Google) ika...@google.com wrote:
 Hey Viktor,

 I've been doing a bunch of research on this and it turns out my original
 post was incorrect. Unlike the version of Memcached that is out in the wild,
 the version of Memcached being used for App Engine *does* provide namespaced
 partitioning and nested namespace partitioning, with LRU expiration
 implemented both globally and per namespace (not 100% sure about namespaces
 deeper than root + 1). What this allows is constant time namespace flushing,
 among other security features. This is the mechanism that allows App Engine
 developers to all use Memcache without trampling over each others' data and
 is more sophisticated than prefixing a key - allowing us to track usage per
 user without have to iterate over a key range.

 I'm going to file a bug internally against this mirroring your bug report.
 It's possible we just haven't exposed the interface for nested LRU grabTail
 correctly. I'll update the external bug if I hear anything.



 On Thu, Feb 4, 2010 at 1:17 AM, phraktle phrak...@gmail.com wrote:
  Hi Ikai,

  Any updates? (I see there's a mention of adding grabTail in the 1.3.1
  release notes - though it has been there in 1.3.0 already)

  In the meantime, I have implemented the queue with a head/tail
  pointer, using the increment call... This works, but if grabTail
  worked as advertised, that would be more elegant.

  Regards,
   Viktor

  On Feb 2, 7:28 pm, Ikai L (Google) ika...@google.com wrote:
   That's interesting. Let me follow up with the team to try to understand
  how
   this is supposed to work.

   On Tue, Feb 2, 2010 at 12:05 AM, phraktle phrak...@gmail.com wrote:

Plus, it's working okay in the development server :)

V.

On Feb 2, 9:03 am, phraktle phrak...@gmail.com wrote:
 Hi,

 In this case grabTail would be quite useless, as one cannot really
 construct queues with it (ie. it would just force removing items from
 all namespaces that wouldn't even expire otherwise). The
  documentation
 also implies that there's a separate LRU list per namespace, which
 does make sense, but is not what's happening in production:

http://code.google.com/appengine/docs/java/javadoc/com/google/appengi
  ..
.)

 Grabs (atomically get and delete) items off the tail of LRU list.
 This can be used to implement queue system with high throughput and
 low latency, but low reliability. Current namespace should be set and
 not empty for the service. For each namespace memcache maintains a
 separate LRU list.

 Regards,
   Viktor

 On Feb 1, 9:22 pm, Ikai L (Google) ika...@google.com wrote:

  I'll raise the issue with some other members of the team, but it
  seems
like
  this is working as expected. A memcache namespace is nothing more
  than
a
  prefix applied to a memcache key. There's no true partitioning
mechanism
  within memcache. grabTail simply returns the item that would be
  expired
by
  the LRU mechanism if memcache needed more space. There isn't a
different
  queue per namespace, only a queue for global expirations.

  On Mon, Feb 1, 2010 at 4:29 AM, phraktle phrak...@gmail.com
  wrote:
   Hi,

   On production, grabTail returns objects from other namespaces.
  This
is
   a significant problem that
   makes grabTail (thus queue-like usage) unusable.

   I filed this as a bug, with a very simple example here:
  http://code.google.com/p/googleappengine/issues/detail?id=2706

   Can you please look into this? I don't even see a workaround that
  I
   can implement in the meantime...

   Thanks,
    Viktor

   --
   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-j...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.comgoogle-appengine-java%2B
  unsubscr...@googlegroups.comgoogle-appengine-java%2B
unsubscr...@googlegroups.com
   .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.

  --
  Ikai Lan
  Developer 

Re: [appengine-java] maven + GAE + Spring

2010-02-05 Thread Hannu Leinonen
By GAE plugin are you referring to the Maven GAE plugin or the Google
flugin for Eclipse?

Anyhow, a while ago I blogged about Eclipse, GAE and Maven working
nicely together at
http://hamandeggs.wordpress.com/2010/01/26/how-to-gae-eclipse-maven/
But if your issue is more related to the multiproject structure, I'm
afraid I can't help you much, since I'm not really familiar with that.


Regards,
Hannu

On 5.2.2010 19:15, Omri Cohen wrote:
 Hi,
 I am building a maven+GAE+Spring project, i have a problem:
 it seems that GAE plugin ignores eclipse multiple projects as defined in
 the .classpath and .project
 I have to run mvn install (create jars) and eclipse:eclipse (copy jars
 to project-web/WEB-INF/war/) after every change in any resources outside
 of project-web.
 can anyone advice?
 Thanks,
 Omri
 
 -- 
 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-j...@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.

-- 
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-j...@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.



Re: [appengine-java] dynamic class load

2010-02-05 Thread Ikai Lan
Ah, you're using Groovy. Unfortunately, I'm not a Groovy expert, so I
couldn't say. The Groovy FAQ seems to indicate that you can do this:
http://docs.codehaus.org/display/GROOVY/Eclipse+Plugin+2.0.0+FAQ#EclipsePlugin2.0.0FAQ-Q.Doesitsupportincrementalcompilation%3F

On Fri, Feb 5, 2010 at 3:36 PM, enes akar enesa...@gmail.com wrote:

 Thanks Ikai, but I wrote Groovy classes and whenever I save the file
 Eclipse wants to restart. Probably because of interpretation phase of Groovy
 classes. Anyway is there a way to handle the situation. Thanks in advance..

 On Wed, Feb 3, 2010 at 2:43 AM, Ikai L (Google) ika...@google.com wrote:

 Yes. Run your server using Debug. Eclipse will automatically compile
 your classes on save.

 The only exception is certain types of changes to classes that need to be
 enhanced after compilation. Eclipse will prompt you to restart.

 On Tue, Feb 2, 2010 at 4:04 PM, javaness enesa...@gmail.com wrote:

 Hi;

 I am trying Java on Eclipse by App engine plugin.

 Is it possible to dynamically load classes? (maybe hot-swapping is the
 correct term)

 In an another project, I use Jetty plugin of Maven, and whenever I
 compile a java class, Jetty automically loads it.
 So no restart is needed on code modifications.

 Is that possible on Eclipse configuration of App Engine.

 Thanks;

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




 --
 Enes Akar
 http://www.linkedin.com/pub/enes-akar/7/835/3aa

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




-- 
Ikai Lan
Developer Programs Engineer, Google App Engine
http://googleappengine.blogspot.com | http://twitter.com/app_engine

-- 
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-j...@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: cron job - too many continues

2010-02-05 Thread lent
I figured out what the problem is.  The problem started when we turned
on HTTPS for our app.  I saw a posting in the Google App Engine group
that too many continues and 302 is due to scheduled jobs will not
follow redirects and the scheduled jobs use HTTP and gets redirected
to HTTPS and it fails.

http://groups.google.com/group/google-appengine/browse_frm/thread/8ad1d04a50deff53/ba7db7e75ec5e81a?lnk=gstq=cron+job+302#ba7db7e75ec5e81a

Len

On Feb 5, 9:38 am, lent lentakeu...@gmail.com wrote:
 Hello,

 The cron job that I have scheduled to run displays status:
 on time Too many continues

 And in the log all the cron jobs requests show a status of 302.

 What does Too many continues mean and how can I get the cron jobs
 back working again?

 Regards,
 Len

-- 
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-j...@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.



Re: [appengine-java] Re: Incorrect number of entities returned

2010-02-05 Thread aswath satrasala
Hello Ikai,
I posted all the code in a new thread.
owned relationship ? - could it be a bugThanks
-Aswath

On Sat, Feb 6, 2010 at 12:13 AM, Ikai L (Google) ika...@google.com wrote:

 Any chance you can post all the code? This way we can just load it up in
 our development environment of choice and run it.

 On Thu, Feb 4, 2010 at 7:21 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Any help here...

 Thanks.


 On Wed, Feb 3, 2010 at 5:35 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 I did further investigation on my unittest (code is pasted in my previous
 email).
 The second transaction block is not persisting the SecurityGroup Entity.
 If I add the following line with in txn block,
 securityGroup = pm.getObjectById(SecurityGroup.class,
 securityGroup.getId());

 I see the following in testresults file
 Testcase: testSecurityGroupNotBelongToTenant took 0.239 sec
 Caused an ERROR
 The key value passed to construct a SingleFieldIdentity of type class
 javax.jdo.identity.StringIdentity for class class
 com.veersoft.security.SecurityGroup is null.

 -Aswath


 On Wed, Feb 3, 2010 at 12:11 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 Hello
 Anything wrong here.
 I have two classes Tenant and SecurityGroup.
 * Create Tenant
 * Create SecurityGroup
 * Add SecurityGroup to Tenant
 * Persist.

 * Create another SecurityGroup entity.
 * Persist

 When I query the datastore for SecurityGroup entities, I get back one
 entity instead of two.

 Any ideas?

 Following is the code for the two classes.
 @PersistenceCapable(identityType = IdentityType.APPLICATION)
 public class Tenant {
 @PrimaryKey
 @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
 @Extension(vendorName = datanucleus, key=gae.encoded-pk,
 value=true)
 private String id;

 @Persistent
 @Extension(vendorName = datanucleus, key=gae.pk-name,
 value=true)
 private String name;

 @Persistent
 private ListSecurityGroup secGrpList = new
 ArrayListSecurityGroup();
 }

 @PersistenceCapable(identityType = IdentityType.APPLICATION)
 public class SecurityGroup {

 @PrimaryKey
 @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
 @Extension(vendorName = datanucleus, key = gae.encoded-pk, value
 = true)
 private String id;

 @Persistent
 @Extension(vendorName = datanucleus, key = gae.pk-name, value =
 true)
 private String name;
 }

 Thanks



 On Thu, Jan 28, 2010 at 5:14 PM, aswath satrasala 
 aswath.satras...@gmail.com wrote:

 I have the following unittest code.  I am persisting two SecurityGroup
 entities, one as a child of Tenant and one entity not having any parent.

 beginTxn();
 Tenant tenant = new Tenant();
 SecurityGroup securityGroup = new SecurityGroup();
 securityGroup.setName(PARTYMGRADMIN);
 tenant.getSecGrpList().add(securityGroup);
 pm.makePersistent(tenant);
 commitTxn();

 beginTxn();
 securityGroup = new SecurityGroup();
 securityGroup.setName(PARTYMGRADMIN1);
 pm.makePersistent(securityGroup);
 commitTxn();

 beginTxn();
 Query q = pm.newQuery(SecurityGroup.class);
 ListSecurityGroup results = (ListSecurityGroup)
 q.execute();
 assertEquals(2, results.size());
 commitTxn();

 I get results.size() as one. I am expecting the results.size() as two

 -Aswath




  --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.




 --
 Ikai Lan
 Developer Programs Engineer, Google App Engine
 http://googleappengine.blogspot.com | http://twitter.com/app_engine

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.


-- 
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-j...@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] jdo query question

2010-02-05 Thread Andrei
how do i do query with 4 params?

 query.setFilter( x  x1  x  x2  y  y1  y  y2 );
  query.declareParameters( int x1, int x2, int y1, int y2 );


  Object arr[] = new Integer[4];
  arr[0] = Integer.valueOf( x1 );
  arr[1] = Integer.valueOf( x2 );
  arr[2] = Integer.valueOf( y1 );
  arr[3] = Integer.valueOf( y2 );

  ListLocation results =
(ListLocation)query.executeWithArray( arr );

this gives me Exception

-- 
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-j...@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] Unable to upload application - Total refill rate must not exceed 20 per second

2010-02-05 Thread Ronin
hi,

I'm unable to upload the application to GAE.

Check logs 
Unable to update:
java.io.IOException: Error posting to URL:
http://appengine.google.com/api/queue/update?app_id=nsecharts-testversion=1;
400 Bad Request
Invalid queue configuration. Total refill rate must not exceed 20 per
second (is 24.0).

at
com.google.appengine.tools.admin.ServerConnection.send(ServerConnection.java:
143)
at
com.google.appengine.tools.admin.ServerConnection.post(ServerConnection.java:
81)
at
com.google.appengine.tools.admin.AppVersionUpload.send(AppVersionUpload.java:
427)
at
com.google.appengine.tools.admin.AppVersionUpload.updateQueue(AppVersionUpload.java:
157)
at
com.google.appengine.tools.admin.AppVersionUpload.doUpload(AppVersionUpload.java:
121)
at
com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:
56)
at com.google.appengine.tools.admin.AppCfg
$UpdateAction.execute(AppCfg.java:521)
at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:130)
at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:58)
at com.google.appengine.tools.admin.AppCfg.main(AppCfg.java:54)
com.google.appengine.tools.admin.AdminException: Unable to update app:
Error posting to URL: 
http://appengine.google.com/api/queue/update?app_id=nsecharts-testversion=1;
400 Bad Request
Invalid queue configuration. Total refill rate must not exceed 20 per
second (is 24.0).

at
com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:
62)
at com.google.appengine.tools.admin.AppCfg
$UpdateAction.execute(AppCfg.java:521)
at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:130)
at com.google.appengine.tools.admin.AppCfg.init(AppCfg.java:58)
at com.google.appengine.tools.admin.AppCfg.main(AppCfg.java:54)
Caused by: java.io.IOException: Error posting to URL:
http://appengine.google.com/api/queue/update?app_id=nsecharts-testversion=1;
400 Bad Request
Invalid queue configuration. Total refill rate must not exceed 20 per
second (is 24.0).

at
com.google.appengine.tools.admin.ServerConnection.send(ServerConnection.java:
143)
at
com.google.appengine.tools.admin.ServerConnection.post(ServerConnection.java:
81)
at
com.google.appengine.tools.admin.AppVersionUpload.send(AppVersionUpload.java:
427)
at
com.google.appengine.tools.admin.AppVersionUpload.updateQueue(AppVersionUpload.java:
157)
at
com.google.appengine.tools.admin.AppVersionUpload.doUpload(AppVersionUpload.java:
121)
at
com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:
56)
... 4 more

-- 
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-j...@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.



Re: [appengine-java] maven + GAE + Spring

2010-02-05 Thread Omri Cohen
thnaks for replying,

i am using as a profile, including all needed GAE jars
the problem is that i have to recreate internal project jars and copy them
to you WEB-INF/war/lib folder.

what is the standard way of integrating GAE to MVN?

thanks,


On Sat, Feb 6, 2010 at 2:13 AM, Hannu Leinonen hlein...@gmail.com wrote:

 By GAE plugin are you referring to the Maven GAE plugin or the Google
 flugin for Eclipse?

 Anyhow, a while ago I blogged about Eclipse, GAE and Maven working
 nicely together at
 http://hamandeggs.wordpress.com/2010/01/26/how-to-gae-eclipse-maven/
 But if your issue is more related to the multiproject structure, I'm
 afraid I can't help you much, since I'm not really familiar with that.


 Regards,
 Hannu

 On 5.2.2010 19:15, Omri Cohen wrote:
  Hi,
  I am building a maven+GAE+Spring project, i have a problem:
  it seems that GAE plugin ignores eclipse multiple projects as defined in
  the .classpath and .project
  I have to run mvn install (create jars) and eclipse:eclipse (copy jars
  to project-web/WEB-INF/war/) after every change in any resources outside
  of project-web.
  can anyone advice?
  Thanks,
  Omri
 
  --
  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-j...@googlegroups.com.
  To unsubscribe from this group, send email to
  google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
  For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.

 --
 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-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.



-- 
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-j...@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.