{"id":135,"date":"2011-01-11T16:49:15","date_gmt":"2011-01-11T14:49:15","guid":{"rendered":"http:\/\/www.bittner.fr\/blogs\/pierre\/?p=135"},"modified":"2011-01-11T16:49:15","modified_gmt":"2011-01-11T14:49:15","slug":"frameworks-a-suivre","status":"publish","type":"post","link":"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/","title":{"rendered":"Frameworks \u00e0 suivre&#8230;"},"content":{"rendered":"<p>Hier soir, je suis all\u00e9 \u00e0 la pr\u00e9sentation de <a href=\"http:\/\/gaelyk.appspot.com\/\">GAElyk<\/a>, un toolkit <a href=\"http:\/\/groovy.codehaus.org\/\">Groovy <\/a>pour le <a href=\"http:\/\/code.google.com\/appengine\/\">Google App Engine<\/a>. La pr\u00e9sentation a \u00e9t\u00e9 effectu\u00e9e par <a href=\"http:\/\/glaforge.free.fr\/weblog\/\">Guillaume Laforge<\/a> himself dans le cadre du <a href=\"http:\/\/www.meetup.com\/Paris-Groovy-Grails\/\">Paris Groovy\/Grails User Group<\/a>.<\/p>\n<p>Ce combo (GAE+Groovy) \u00eatre vraiment hyper prometteur. Je recommande pour les personnes qui sont pr\u00eat \u00e0 se restreindre \u00e0 la plateforme de google. J&rsquo;imagine avec \u00e0 disposition tous les services disponibles sur l&rsquo;app engine (messagerie, memcache, etc&#8230;) mais sur d&rsquo;autres plateformes (Amazon, etc&#8230;) de fa\u00e7on aussi transparente (sous forme de plugin ?) et int\u00e9gr\u00e9e \u00e0 Grails.<\/p>\n<p>Pour la persistance sur le data store d&rsquo;App Engine, l&rsquo;API <a href=\"http:\/\/code.google.com\/p\/objectify-appengine\/\">Objectify<\/a> semble \u00eatre la plus recommandable. De mon exp\u00e9rience r\u00e9cente sur grails et le plugin app engine, je d\u00e9conseille la sur-couche JPA \/ JDO.<\/p>\n<p>Autre framework tendance du cot\u00e9 scala: <a href=\"http:\/\/www.liftweb.net\/\">Lift<\/a> framework web qui est utilis\u00e9 sur Linkedin. <a href=\"http:\/\/www.theregister.co.uk\/2009\/04\/01\/twitter_on_scala\/\">Scala ayant remplac\u00e9 Ruby chez twitter<\/a>.<\/p>\n<p>Je suis parti sur Groovy\/<a href=\"http:\/\/www.grails.org\/\">Grails<\/a> pour mon projet et j&rsquo;en suis tr\u00e8s satisfait malgr\u00e8s les (tr\u00e8s) mauvaises exp\u00e9riences avec certains plugins (appengine\/oauth).<\/p>\n<p>Pour le moment, je me dirige donc vers un h\u00e9bergement sur <a href=\"http:\/\/aws.amazon.com\/fr\/ec2\/\">Amazon EC2<\/a> via <a href=\"http:\/\/www.cloudfoundry.com\/\">Cloud Foundry<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hier soir, je suis all\u00e9 \u00e0 la pr\u00e9sentation de GAElyk, un toolkit Groovy pour le Google App Engine. La pr\u00e9sentation a \u00e9t\u00e9 effectu\u00e9e par Guillaume Laforge himself dans le cadre du Paris Groovy\/Grails User Group. Ce combo (GAE+Groovy) \u00eatre vraiment hyper prometteur. Je recommande pour les personnes qui sont pr\u00eat \u00e0 se restreindre \u00e0 la [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-135","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Frameworks \u00e0 suivre... - Pierre&#039;s weblog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Frameworks \u00e0 suivre... - Pierre&#039;s weblog\" \/>\n<meta property=\"og:description\" content=\"Hier soir, je suis all\u00e9 \u00e0 la pr\u00e9sentation de GAElyk, un toolkit Groovy pour le Google App Engine. La pr\u00e9sentation a \u00e9t\u00e9 effectu\u00e9e par Guillaume Laforge himself dans le cadre du Paris Groovy\/Grails User Group. Ce combo (GAE+Groovy) \u00eatre vraiment hyper prometteur. Je recommande pour les personnes qui sont pr\u00eat \u00e0 se restreindre \u00e0 la [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/\" \/>\n<meta property=\"og:site_name\" content=\"Pierre&#039;s weblog\" \/>\n<meta property=\"article:published_time\" content=\"2011-01-11T14:49:15+00:00\" \/>\n<meta name=\"author\" content=\"Pierre\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"Pierre\" \/>\n\t<meta name=\"twitter:label2\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/\"},\"author\":{\"name\":\"Pierre\",\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/3ab57f92769bc1c95b4f56d526b0b225\"},\"headline\":\"Frameworks \u00e0 suivre&#8230;\",\"datePublished\":\"2011-01-11T14:49:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/\"},\"wordCount\":203,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/3ab57f92769bc1c95b4f56d526b0b225\"},\"articleSection\":[\"Uncategorized\"],\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/\",\"url\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/\",\"name\":\"Frameworks \u00e0 suivre... - Pierre&#039;s weblog\",\"isPartOf\":{\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/#website\"},\"datePublished\":\"2011-01-11T14:49:15+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Frameworks \u00e0 suivre&#8230;\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/#website\",\"url\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/\",\"name\":\"Pierre's weblog\",\"description\":\"Release 2.3\",\"publisher\":{\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/3ab57f92769bc1c95b4f56d526b0b225\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/3ab57f92769bc1c95b4f56d526b0b225\",\"name\":\"Pierre\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-content\/uploads\/2025\/09\/Pierre-Bittner.png\",\"contentUrl\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-content\/uploads\/2025\/09\/Pierre-Bittner.png\",\"width\":1920,\"height\":1080,\"caption\":\"Pierre\"},\"logo\":{\"@id\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/image\/\"},\"sameAs\":[\"http:\/\/www.bittner.fr\/blogs\/pierre\",\"https:\/\/www.linkedin.com\/in\/pierre-bittner\/\",\"https:\/\/www.youtube.com\/@pierrebittner\"],\"url\":\"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/author\/admin\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Frameworks \u00e0 suivre... - Pierre&#039;s weblog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/","og_locale":"fr_FR","og_type":"article","og_title":"Frameworks \u00e0 suivre... - Pierre&#039;s weblog","og_description":"Hier soir, je suis all\u00e9 \u00e0 la pr\u00e9sentation de GAElyk, un toolkit Groovy pour le Google App Engine. La pr\u00e9sentation a \u00e9t\u00e9 effectu\u00e9e par Guillaume Laforge himself dans le cadre du Paris Groovy\/Grails User Group. Ce combo (GAE+Groovy) \u00eatre vraiment hyper prometteur. Je recommande pour les personnes qui sont pr\u00eat \u00e0 se restreindre \u00e0 la [&hellip;]","og_url":"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/","og_site_name":"Pierre&#039;s weblog","article_published_time":"2011-01-11T14:49:15+00:00","author":"Pierre","twitter_card":"summary_large_image","twitter_misc":{"\u00c9crit par":"Pierre","Dur\u00e9e de lecture estim\u00e9e":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/#article","isPartOf":{"@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/"},"author":{"name":"Pierre","@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/3ab57f92769bc1c95b4f56d526b0b225"},"headline":"Frameworks \u00e0 suivre&#8230;","datePublished":"2011-01-11T14:49:15+00:00","mainEntityOfPage":{"@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/"},"wordCount":203,"commentCount":0,"publisher":{"@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/3ab57f92769bc1c95b4f56d526b0b225"},"articleSection":["Uncategorized"],"inLanguage":"fr-FR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/","url":"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/","name":"Frameworks \u00e0 suivre... - Pierre&#039;s weblog","isPartOf":{"@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/#website"},"datePublished":"2011-01-11T14:49:15+00:00","breadcrumb":{"@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/2011\/01\/11\/frameworks-a-suivre\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.bittner.fr\/blogs\/pierre\/"},{"@type":"ListItem","position":2,"name":"Frameworks \u00e0 suivre&#8230;"}]},{"@type":"WebSite","@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/#website","url":"https:\/\/www.bittner.fr\/blogs\/pierre\/","name":"Pierre's weblog","description":"Release 2.3","publisher":{"@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/3ab57f92769bc1c95b4f56d526b0b225"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.bittner.fr\/blogs\/pierre\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":["Person","Organization"],"@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/3ab57f92769bc1c95b4f56d526b0b225","name":"Pierre","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/image\/","url":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-content\/uploads\/2025\/09\/Pierre-Bittner.png","contentUrl":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-content\/uploads\/2025\/09\/Pierre-Bittner.png","width":1920,"height":1080,"caption":"Pierre"},"logo":{"@id":"https:\/\/www.bittner.fr\/blogs\/pierre\/#\/schema\/person\/image\/"},"sameAs":["http:\/\/www.bittner.fr\/blogs\/pierre","https:\/\/www.linkedin.com\/in\/pierre-bittner\/","https:\/\/www.youtube.com\/@pierrebittner"],"url":"https:\/\/www.bittner.fr\/blogs\/pierre\/blog\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-json\/wp\/v2\/posts\/135","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-json\/wp\/v2\/comments?post=135"}],"version-history":[{"count":1,"href":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-json\/wp\/v2\/posts\/135\/revisions"}],"predecessor-version":[{"id":136,"href":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-json\/wp\/v2\/posts\/135\/revisions\/136"}],"wp:attachment":[{"href":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-json\/wp\/v2\/media?parent=135"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-json\/wp\/v2\/categories?post=135"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bittner.fr\/blogs\/pierre\/wp-json\/wp\/v2\/tags?post=135"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}