J'ai utilisé à la fois Python et Java sur GAE, un projet réalisé avec Python+Django, et un autre avec Java/Groovy+Spring.
Python+Django est très facile à développer au départ, mais pas si facile à maintenir. Il a un temps de démarrage assez rapide, une bonne documentation, etc.
Java+Spring nécessite plus de développement (certaines parties prennent 2 à 3 fois plus de temps que pour faire la même chose en utilisant django), ont des problèmes avec le temps de démarrage (même si vous utilisez warmup
demandes). Mais il est beaucoup plus stable.
Les projets Python ont trop d'erreurs, la plupart du temps sans aucune raison visible (pour vous) :( Et il est très difficile de trouver la cause de ces erreurs, en raison de la nature dynamique du langage. Et aussi, soyez prêt à patcher manuellement certaines bibliothèques que vous utilisez. Ne vous méprenez pas, j'ai de nombreuses années d'expérience en Python, mais il est vraiment difficile de le maintenir sur des systèmes distribués comme GAE, et cela pose vraiment des problèmes de qualité du code :(
Java, en revanche, fonctionne très bien. Si votre code a des problèmes, vous verrez toutes les informations dont vous avez besoin pour les résoudre, et après quelques itérations, vous résoudrez presque tous les bugs. Sauf un : parfois vous verrez des erreurs de démarrage :( Pas trop souvent, en fait.
PS : le choix du bon langage pour GAE dépend du langage que vous connaissez le mieux :) Si vous ne connaissez pas encore Java - ne commencez pas avec lui, il faut au moins 1 à 2 ans pour comprendre le langage.