<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0" xml:base="http://www.groovyq.net">
<channel>
 <title>GroovyQ</title>
 <link>http://www.groovyq.net</link>
 <description />
 <language>zh-hans</language>
<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/groovyq" /><feedburner:info uri="groovyq" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>groovyq</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
 <title>Grails每周观察（2012-04）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/7wUxqgSSQWY/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-04%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a rel="bookmark" title=" This Week in Grails (2012-04)" href="http://burtbeckwith.com/blog/?p=1204"&gt;This Week in Grails (2012-04)&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本周，Peter Ledbrook开始编写Grails的HOWTO系列，第一篇是关于&lt;a href="http://pledbrook.github.com/grails-howtos/en/upgradeToGrails2.html" target="_blank"&gt;升级到Grails 2.0&lt;/a&gt;，这还有一篇&lt;a href="http://pledbrook.github.com/grails-howtos/en/contributeToTheseGuides.html" target="_blank"&gt;HOWTO编写指南&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;p&gt;我们需要你的帮助找出无效的JIRA问题（如已修复或不再是个问题的）。在&lt;a href="http://grails.org/Contribute" target="_blank"&gt;Grails Contribute页面&lt;/a&gt;中查看&amp;ldquo;Reviewing issues&amp;rdquo;一节，了解新的&amp;ldquo;Last Reviewed&amp;rdquo;和&amp;ldquo;Flagged&amp;rdquo;属性的使用方法。&lt;/p&gt;
&lt;p&gt;Tomas Lin写下了&lt;a href="http://fbflex.wordpress.com/2012/01/27/deploying-grails-applications-on-appfog-first-impressions/" target="_blank"&gt;将Grails应用部署到AppFog&lt;/a&gt;的经验之谈。这等于告诉Grails开发者还有另一个云提供商可用，好消息！&lt;/p&gt;
&lt;p&gt;STS 2.9.0.M2&lt;a href="http://www.springsource.org/node/3377" target="_blank"&gt;本周发布了&lt;/a&gt;。查看这个关于&lt;a href="http://download.springsource.com/release/STS/doc/STS-new_and_noteworthy-2.9.0.M2.pdf" target="_blank"&gt;新特性和值得注意的内容的PDF文件&lt;/a&gt;，你能了解它对Groovy、Grails和Gradle的支持有了哪些更新。&lt;/p&gt;
&lt;p&gt;本周，我发布了一个&lt;a href="http://grails.org/plugin/ratpack" target="_blank"&gt;新插件&lt;/a&gt;，它能支持在Grails应用中使用&lt;a href="https://github.com/bleedingwolf/Ratpack" target="_blank"&gt;Ratpack&lt;/a&gt;。感谢James Williams的&lt;a href="http://jameswilliams.be/blog/entry/233" target="_blank"&gt;博文&lt;/a&gt;，给了我这个插件的灵感。不到一天，就有了&lt;a href="http://padcom13.blogspot.com/2012/01/grails-and-ratpack.html" target="_blank"&gt;Matthias Hryniszak介绍该插件使用的博文&lt;/a&gt;。&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a target="_blank" href="http://burtbeckwith.com/blog/?cat=32"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a target="_blank" href="http://feeds.feedburner.com/this-week-in-grails"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.vitoria-gasteiz.org/"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://t.co/"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.nabiladouani.fr/"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;div class="toc"&gt;&lt;a href="#miscellaneous"&gt;杂七杂八&lt;/a&gt;&lt;br /&gt;
&lt;a href="#plugins"&gt;插件&lt;/a&gt;&lt;br /&gt;
&lt;a href="#tweets"&gt;有趣的嘀咕&lt;/a&gt;&lt;br /&gt;
&lt;a href="#jobs"&gt;工作&lt;/a&gt;&lt;br /&gt;
&lt;a href="#meetups"&gt;用户组和会议&lt;/a&gt;&lt;/div&gt;
&lt;hr /&gt;
&lt;div id="miscellaneous"&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://developer4life.blogspot.com/2012/01/wizard-design-pattern.html" target="_blank"&gt;Wizard设计模式&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;不全是针对于Grails的，但这是一种很有趣的方法，尤其对于DSL和构建器而言&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://assarconsulting.blogspot.com/2012/01/groovy-dsl-simple-example.html" target="_blank"&gt;Groovy DSL的简单示例&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.tomcatexpert.com/blog/2012/01/24/apache-tomcat-7025-released" target="_blank"&gt;Apache Tomcat 7.0.25发布了&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.jelastic.com/2012/01/24/grails-on-jelastic/" target="_blank"&gt;Grails on Jelastic&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://plus.google.com/117411438136918964913/posts/axyCZk1P5L5" target="_blank"&gt;你的Grails应用还没升级到2？让我们知道如何干！&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://ldaley.com/post/615966534/custom-grails-test" target="_blank"&gt;自定义Grails Test Types/Phases&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;虽旧但是很酷&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="https://leanjavaengineering.wordpress.com/2012/01/26/c-r-a-p-metrics-for-grails/" target="_blank"&gt;Grails的C.R.A.P.指标&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jroller.com/melix/entry/static_compilation_for_groovy_poll" target="_blank"&gt;Groovy静态编译调查结果&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.intelligrape.com/blog/2012/01/29/groovy-annotations-for-tostring-and-equalsandhashcode/" target="_blank"&gt;用于ToString和EqualsAndHashCode的Groovy注解 &lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;不错的提醒，添加到Domain Class模板中是一个有用的技巧&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://refactr.com/blog/2012/01/grails-database-migration-gotchas/" target="_blank"&gt;Grails数据库迁移需知&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://schneide.wordpress.com/2012/01/23/upgrading-your-app-to-grails-2-0-0-better-wait-for-2-0-1/" target="_blank"&gt;要将app升级到Grails2.0.0？还是等到2.0.1吧！&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.tomcatexpert.com/blog/2012/01/24/using-tomcat-7-jdbc-connection-pool-production" target="_blank"&gt;在产品环境下使用Tomcat 7 JDBC连接池&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jroller.com/aalmiray/entry/grails_bootstrapping_data_with_domainbuilder" target="_blank"&gt;Grails：使用DomainBuilder初始化数据&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mrhaki.blogspot.com/2012/01/groovy-goodness-solve-naming-conflicts.html" target="_blank"&gt;Groovy技巧：使用Builder解决命名冲突&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jroller.com/melix/entry/static_type_checking_talk_from" target="_blank"&gt;巴黎Groovy/Grails用户组关于静态类型检查的演讲&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.workopolis.com/EN/job/13616464" target="_blank"&gt;多伦多的Java Groovy/Grails开发者&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://sbglasius.tumblr.com/post/16691515147/grails-weceem-apache2" target="_blank"&gt;Grails、Weceem和Apache2&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;GR8Conf大会的站点运行在了新的硬件上&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.andresteingress.com/2012/01/24/cachemanagers-diskstorepath/" target="_blank"&gt;CacheManager的diskStorePath&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;配置Ehcache时的有趣内容&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-23" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-23&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-24" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-24&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-25" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-25&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-26" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-26&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-27" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-27&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://forums.gradle.org/gradle/topics/this_week_in_gradle_2012_4" target="_blank"&gt;Gradle每周观察（2012-4）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.springsource.org/node/3379" target="_blank"&gt;spring每周观察，2012年1月24日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周新发布了3个插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/jquery-ui-timepicker" target="_blank"&gt;jquery-ui-timepicker&lt;/a&gt; 0.9.8.1. 为&lt;a target="_blank" href="http://trentrichardson.com/examples/timepicker/"&gt;http://trentrichardson.com/examples/timepicker/&lt;/a&gt;提供了资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/eco-resources" target="_blank"&gt;eco-resources&lt;/a&gt; 0.1. 将Eco模板编译成Javascript；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/ratpack" target="_blank"&gt;ratpack&lt;/a&gt; 1.0.1. 允许你在Grails中使用Ratpack。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有17个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/atmosphere" target="_blank"&gt;atmosphere&lt;/a&gt; 0.4.2.1. 提供了与Atmosphere项目（一种轻便的AjaxPush/Comet和WebSocket框架）的集成 ；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/ckeditor" target="_blank"&gt;ckeditor&lt;/a&gt; 3.6.2.1. 实现了Grails和CKEditor的整合 ；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/date-formatting" target="_blank"&gt;date-formatting&lt;/a&gt; 0.2.5. 为Date对象添加了转换成不同字符串格式的功能；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/foundation" target="_blank"&gt;foundation&lt;/a&gt; 2.1.4.3. 提供了Foundation CSS框架的资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/google-visualization" target="_blank"&gt;google-visualization&lt;/a&gt; 0.5. 为Google Visualization API的交互图片提供标签库；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/grails-melody" target="_blank"&gt;grails-melody&lt;/a&gt; 1.11. 集成了JavaMelody系统监视工具；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/gsp-taglib" target="_blank"&gt;gsp-taglib&lt;/a&gt; 0.3.2. 可以在grails-app/taglib下的用GSP文件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/jasper" target="_blank"&gt;jasper&lt;/a&gt; 1.5.2. 使用JasperReports；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/rich-domain" target="_blank"&gt;rich-domain&lt;/a&gt; 1.0.6. 为非Grails domain class的POGO提供了依赖注入；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-mock" target="_blank"&gt;spring-security-mock&lt;/a&gt; 1.0.1. 支持Spring Security的模拟认证；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-saml" target="_blank"&gt;spring-security-saml&lt;/a&gt; 1.0.0.M11. SAML 2.x支持Spring Security插件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-shibboleth-native-sp" target="_blank"&gt;spring-security-shibboleth-native-sp&lt;/a&gt; 1.0.2. Shibboleth Naitive SP，支持Spring Security Grails插件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/syntax-highlighter" target="_blank"&gt;syntax-highlighter&lt;/a&gt; 3.0.83. 为GSP页面上显示的示例代码添加了语法加亮；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/tiny-mce" target="_blank"&gt;tiny-mce&lt;/a&gt; 3.4.7. 为你的GSP页面上内嵌的编辑器集成了TinyMce编辑器的javascript和标签&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/twitter4j" target="_blank"&gt;twitter4j&lt;/a&gt; 0.3.2. 使用twitter4j库发送和接受Twitter消息；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/xwiki-rendering" target="_blank"&gt;xwiki-rendering&lt;/a&gt; 0.4. 使用XWiki Rendering框架转换文本；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/zkui" target="_blank"&gt;zkui&lt;/a&gt; 0.4.1. 无缝的将ZK集成到Grails的基础设施；使用 Grails的基础设施，如GSP、controller，而不是使用作为ZKGrails插件。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/CedricChampeau/status/161145720496336897" target="_blank"&gt;@CedricChampeau&lt;/a&gt;：我在巴黎&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;用户组中关于静态类型检查演讲的更多细节： &lt;a target="_blank" href="http://t.co/mUwPQcJD"&gt;http://t.co/mUwPQcJD&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/LondonGGUG/status/161823948487655424" target="_blank"&gt;@LondonGGUG&lt;/a&gt;：在下一次GGUG中，有人愿意免费分享他们的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;部署安装么？2月20日，时长10-30分钟。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/joshareed/status/161983137939849216" target="_blank"&gt;@joshareed&lt;/a&gt;：&amp;lsquo;git clean -df&amp;rsquo;对于清理那些Grails升级重新生成的所有的图片、css、js非常有效。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/wangjammer5/status/162155760539795456" target="_blank"&gt;@wangjammer5&lt;/a&gt;：今早与&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;团队进行了不错的沟通，产生了取代install-plugin的想法: &lt;a target="_blank" href="http://t.co/fQcHbXeJ"&gt;http://t.co/fQcHbXeJ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/CodersUniverse/status/162163770276319232" target="_blank"&gt;@CodersUniverse&lt;/a&gt;：印度的SpringPeople发起了开放式培训：&amp;hellip; Tomcat、Apache、Groovy &amp;amp; Grails、Testing、Databases、Ope&amp;hellip; &lt;a target="_blank" href="http://t.co/DfnHxmk7"&gt;http://t.co/DfnHxmk7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/fifthposition/status/162203342813143040" target="_blank"&gt;@fifthposition&lt;/a&gt;：Grails 2.0和emacs shell-mode: &lt;a target="_blank" href="http://t.co/ruPXN0i2"&gt;http://t.co/ruPXN0i2&lt;/a&gt;。（感谢&lt;a target="_blank" href="https://twitter.com/#!/ataylor284"&gt;@ataylor284&lt;/a&gt; ）&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23emacs"&gt;#emacs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/aalmiray/status/162281230547697664" target="_blank"&gt;@aalmiray&lt;/a&gt;：白天捣鼓groovy/javafx；晚上捣鼓griffon/grails。2012年的日子会过得很意思。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/gr8conf/status/162301816149770242" target="_blank"&gt;@gr8conf&lt;/a&gt;：我们非常高兴的宣布，SpringSource是&lt;a target="_blank" href="https://search.twitter.com/search?q=%23gr8conf"&gt;#gr8conf&lt;/a&gt;2012欧洲大会的主要赞助商。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23gradle"&gt;#gradle&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23griffon"&gt;#griffon&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23vmware"&gt;#vmware&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/nhoussos/status/162830544617480192" target="_blank"&gt;@nhoussos&lt;/a&gt;：EKT（Grails开发的）发布了免费/开源的申请跟踪（网络招聘）系统：&lt;a target="_blank" href="http://t.co/n7qaC2Fy"&gt;http://t.co/n7qaC2Fy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/jatin_Shephertz/status/162965950826684420" target="_blank"&gt;@jatin_Shephertz&lt;/a&gt;：我在Linkedin上创建了一个针对Grails新手的组：&lt;a target="_blank" href="http://t.co/FNjG7dEq"&gt;http://t.co/FNjG7dEq&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/bmuschko/status/163675327195906048" target="_blank"&gt;@bmuschko&lt;/a&gt;：发布了&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; Google Visualization插件的v0.5：&lt;a target="_blank" href="http://t.co/LL6aqysm"&gt;http://t.co/LL6aqysm&lt;/a&gt;。新的视觉效果、少量的bug修复、JS API tag库、更新了文档。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0" target="_blank"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails" target="_blank"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails" target="_blank"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/SpringSourceJob" target="_blank"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/search?q=springsource" target="_blank"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/396" target="_blank"&gt;Groovy/Grails Developer (contract) in Slovakia&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/397" target="_blank"&gt;Sr. Developer Analyst (Grails) &amp;ndash; Columbus, Ohio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.webcruiter.no/wcmain/advertviewpublic.aspx?oppdragsnr=1302686071&amp;amp;culture_id=DA&amp;amp;company_id=4662900&amp;amp;Link_source_id=&amp;amp;use_position_site_header=0" target="_blank"&gt;Freelance Grails/Java udviklere &amp;ndash; K?benhavn&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/SaraJaneJones2/status/162630437922021376" target="_blank"&gt;@SaraJaneJones2&lt;/a&gt;: &lt;a target="_blank" href="https://twitter.com/#!/lakah"&gt;@lakah&lt;/a&gt; Hey John, I&amp;rsquo;m looking for &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;/grails developer for a client in &lt;a target="_blank" href="https://search.twitter.com/search?q=%23nyc"&gt;#nyc&lt;/a&gt;. Would you have any referrals? Plz rt!&lt;/li&gt;
&lt;li&gt;&lt;a href="http://us1.campaign-archive1.com/?u=c4dba33aa421b27c3fc24b8c6&amp;amp;id=05edcb0485" target="_blank"&gt;Groovy / Grails Developer in NYC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/398" target="_blank"&gt;Java Groovy/Grails Developer &amp;ndash; Toronto, ON, Canada&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jobg8.com/JobG8SearchFullView.aspx?jbid=2353&amp;amp;jid=4200854" target="_blank"&gt;Java/Grails Developer in Phoenix, AZ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.ziprecruiter.com/job/Groovy-Grails-Developer/7a1a9cfb/" target="_blank"&gt;Groovy Grails Developer in NYC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://careers.joelonsoftware.com/jobs/13095/sr-consultant-java-grails-ios-permanent-full-object-partners" target="_blank"&gt;Sr. Consultant (Java/Grails/iOS) at Object Partners in Minneapolis, MN&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.virtualvocations.com/job/remote-java-jvm-grails-developer-73521.html" target="_blank"&gt;Remote Java / JVM / Grails Developer&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/coryhodnett/status/161508257620443136" target="_blank"&gt;@coryhodnett&lt;/a&gt;: Looking for a Web Developer for Java Script, Grails, &amp;amp; AJAX contract.  Call me! 6022242486&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mobiquityinc/status/161499479651004419" target="_blank"&gt;@mobiquityinc&lt;/a&gt;: Still looking for &lt;a target="_blank" href="https://search.twitter.com/search?q=%23mobile"&gt;#mobile&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23developers"&gt;#developers&lt;/a&gt;. Especially with &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Cocos2D"&gt;#Cocos2D&lt;/a&gt; and &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; experience. &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Jobs"&gt;#Jobs&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Boston"&gt;#Boston&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23PVD"&gt;#PVD&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/updates?discuss=&amp;amp;scope=73776304&amp;amp;stype=M&amp;amp;type=U&amp;amp;topic=5567319485301395456&amp;amp;a=h_x8" target="_blank"&gt;Looking for Java Developers, Java / Grails developers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/gsuhm/status/162224941427728385" target="_blank"&gt;@gsuhm&lt;/a&gt;: Are you a &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; developer in Atlanta? Drop me a note for a great opportunity&amp;hellip;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/jvandersande/status/162382772332281856" target="_blank"&gt;@jvandersande&lt;/a&gt;: 2 groovy/grails development roles for a new startup. Great company w/ a great story. Willing to look at java, python, ruby, etc engineers&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/errr_/status/162351328625049601" target="_blank"&gt;@errr_&lt;/a&gt;: Are you a bad ass Java developer? Do you know groovy and grails? Do you also know vmware? We NEED you!! Shoot me your resume!&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.bullhornreach.com/job/187981_java-dev-grails-nashville-tn" target="_blank"&gt;Java Dev &amp;ndash; Grails in Nashville&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.ipfhr.com/job/java-grailsgroovy-restful-web-services/650542" target="_blank"&gt;Java, Grails/Groovy, Restful Web Services&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.4europeanjobs.com/display_job/524548/Java_Devloper.html" target="_blank"&gt;Java Developer in Bristol, UK&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://annoncevisning.monster.dk/getjob.aspx?JobID=105876092" target="_blank"&gt;Java udviklere s?ges (Grails, Groovy, Spring) &amp;ndash; Sj?lland &amp;amp; Hovedstad&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.postjobfree.com/job/jxc9lo/grails-remotely-re-done-java-vancouver-bc-v5z-1k7?id=ac073658413d4cf1b38113ee96128b5c" target="_blank"&gt;Contract Java Developer in Vancouver&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="www.linkedin.com/groups/Senior-Java-Grails-Groovy-Developer-39757.S.90634084?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=90634084" target="_blank"&gt;Senior Java Grails/Groovy Developer (contract) in NYC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/DevelopmenGC/status/161812831874973696" target="_blank"&gt;@DevelopmenGC&lt;/a&gt;: Recherche Analyste programmeur Groovy (Grails) (Montr&amp;eacute;al)&lt;br /&gt;
    Contactez : &lt;a href="mailto:cv@developmen.ca"&gt;cv@developmen.ca&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jobsite.co.uk/job/lead-java-developer-architect-groovy-grails-941787085" target="_blank"&gt;Lead Java Developer / Architect &amp;ndash; Groovy, Grails in Northampton, UK&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.springio.net/" target="_blank"&gt;Spring I/O 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;February 16&lt;sup&gt;th&lt;/sup&gt; and 17&lt;sup&gt;th&lt;/sup&gt; in Madrid&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Seattle-Groovy/events/49374702/" target="_blank"&gt;Thursday, February 9, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Seattle-Groovy/events/48327722/" target="_blank"&gt;March 8, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-04%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/HJrJRB5kFHA4zmJZGOmqWc1Rk08/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HJrJRB5kFHA4zmJZGOmqWc1Rk08/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/HJrJRB5kFHA4zmJZGOmqWc1Rk08/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/HJrJRB5kFHA4zmJZGOmqWc1Rk08/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=7wUxqgSSQWY:uo8T0RZcod4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=7wUxqgSSQWY:uo8T0RZcod4:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=7wUxqgSSQWY:uo8T0RZcod4:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/7wUxqgSSQWY" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-04%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/10">IDE</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/11">权限</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Tue, 31 Jan 2012 02:08:35 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">560 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-04%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2012-03）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/RAaD02WyrJg/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-03%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a rel="bookmark" title=" This Week in Grails (2012-03)" href="http://burtbeckwith.com/blog/?p=1174"&gt;This Week in Grails (2012-03)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;只剩几周时间为GR8Conf欧洲大会和美洲大会提交你的演讲提案了。欧洲大会的页面在&lt;a target="_blank" href="http://gr8conf.eu/content/eu2012/cfp"&gt;这里&lt;/a&gt;，美洲大会的是&lt;a target="_blank" href="http://gr8conf.us/content/us2012/Presentation-Proposal"&gt;这里&lt;/a&gt;；两个大会的截至日期均为2月15日。&lt;/p&gt;
&lt;p&gt;本周有不少关于Spring Security的内容。在&lt;a target="_blank" href="http://grails.org/plugin/spring-security-core"&gt;spring-security-core&lt;/a&gt; 1.2.7版本中，我破坏了WAR部署，所以发布了1.2.7.1来纠正这个问题。有一个新的插件集成了&lt;a target="_blank" href="http://grails.org/plugin/spring-security-shibboleth-native-sp"&gt;Shibbol eth native SP&lt;/a&gt;，还有一个是关于&lt;a target="_blank" href="http://grails.org/plugin/spring-security-mock"&gt;mock authentication&lt;/a&gt;。同时，Carsten Block写了一篇关于&lt;a target="_blank" href="http://blog.block-consult.com/2012/01/restricting-concurrent-user-sess&lt;br /&gt;
ions-in-grails-2-using-spring-security-core-plugin/"&gt;限制并发用户会话&lt;/a&gt;的博文（也可以看&lt;a href="http://blog.block-consult.com/2012/01/update-concurrent-user-sessions-&lt;br /&gt;
management-in-grails-2-using-spring-security-core-plugin/" target="_blank"&gt;更新后的版本&lt;/a&gt;）。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;看看Tsuyoshi Yamamoto对&lt;a target="_blank" href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-201&lt;br /&gt;
1"&gt;伦敦2011 Groovy &amp;amp; Grails eXchange大会&lt;/a&gt;的&lt;a target="_blank" href="http://www.slideshare.net/tyama/grailsxlondon-2011"&gt;总结&lt;/a&gt;。有不少好图，其中有&lt;a target="_blank" href="http://grails.org/plugin/acegi"&gt;Acegi插件&lt;/a&gt;的三位开发者，这是我们首次在同一个地方聚在一起。&lt;/p&gt;
&lt;p&gt;本周我发布了一个新的插件，有助于&lt;a target="_blank" href="http://grails.org/plugin/jbossas"&gt;在JBoss上部署应用&lt;/a&gt;。JBoss的每个版本都需要对部署应用做不少事情，所以我想最好用个插件将这些封装起来。该插件支持JBoss 5、6，但还不支持7，因为7还不支持Grails（由于一些bug在7.2中才修复）&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a target="_blank" href="http://burtbeckwith.com/blog/?cat=32"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a target="_blank" href="http://feeds.feedburner.com/this-week-in-grails"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.vitoria-gasteiz.org/"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://t.co/"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.nabiladouani.fr/"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;div class="toc"&gt;&lt;a href="#miscellaneous"&gt;杂七杂八&lt;/a&gt;&lt;br /&gt;
&lt;a href="#plugins"&gt;插件&lt;/a&gt;&lt;br /&gt;
&lt;a href="#tweets"&gt;有趣的嘀咕&lt;/a&gt;&lt;br /&gt;
&lt;a href="#jobs"&gt;工作&lt;/a&gt;&lt;br /&gt;
&lt;a href="#meetups"&gt;用户组和会议&lt;/a&gt;&lt;/div&gt;
&lt;hr /&gt;
&lt;div id="miscellaneous"&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.io/post/15965611310"&gt;开发Groovy AST transformations的经验教训&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blog.andresteingress.com/2012/01/17/nullsafe-reloaded/"&gt;@NullSafe改头换面&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.intelligrape.com/blog/2012/01/18/my-top-9-features-from-grails-2-0/"&gt;我钟意的Grails 2.0的9大特性&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.io/post/16065252638"&gt;使用Gradle、Spock和Geb对Grails核心代码进行功能测试&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.curiousattemptbunny.com/2012/01/gradle-goodness.html"&gt;Gradle精粹&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.curiousattemptbunny.com/2012/01/gradle-goodness_18.html"&gt;Gradle精粹（2）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.curiousattemptbunny.com/2012/01/gradle-goodness_20.html"&gt;Gradle精粹（3）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://fbflex.wordpress.com/2012/01/18/running-geb-specs-using-a-separ&lt;br /&gt;
    ate-driver-profile-to-test-mobile-views-in-grails/"&gt;使用独立Driver Profile运行Geb Spec测试Grails的移动view&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://programmingitch.blogspot.com/2012/01/passing-parameters-into-gr&lt;br /&gt;
    oovy-script.html"&gt;使用绑定类给Groovy脚本传递参数&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blog.andresteingress.com/2012/01/16/gcontracts-1-2-5-released/"&gt;GContracts 1.2.5发布了！&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://viaboxxsystems.de/hacking-around-grails-broken-snapshot-depende&lt;br /&gt;
    ncy-mechanism"&gt;探究并修复Grails的Snapshot依赖机制的缺陷&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.objectpartners.com/2012/01/17/presentation-grails-2-0-what-&lt;br /&gt;
    to-be-excited-about/"&gt;视频：Grails 2.0 &amp;ndash; 有多少令人兴奋的内容&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2012-01-16"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-16&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2012-01-17"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-17&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2012-01-18"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-18&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2012-01-19"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-19&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2012-01-20"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-20&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.springsource.org/node/3366"&gt;Spring每周观察，2012年1月17日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周发布了4个新插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-shibboleth-native-sp"&gt;spring-security-shibboleth-native-sp&lt;/a&gt; 1.0.0. Shibboleth Naitive SP，支持Spring Security Grails插件；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/activiti-shiro"&gt;activiti-shiro&lt;/a&gt; 0.1.1. 将Activiti集成进Shiro Security；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/kendo-ui"&gt;kendo-ui&lt;/a&gt; 1.0.0. 提供Kendo UI依赖；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/jbossas"&gt;jbossas&lt;/a&gt; 1.0. 协助部署到JBoss。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有14个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/build-info"&gt;build-info&lt;/a&gt; 1.2.2. 提供了显示War文件基本信息的controller/view；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/clover"&gt;clover&lt;/a&gt; 3.1.3. 集成了Clover 代码覆盖工具；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/commentable"&gt;commentable&lt;/a&gt; 0.7.7. 将Domain Class中的注释进行标注，使用Tag库或者部分模板将注释集成的View中；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/dao-artefacts"&gt;dao-artefacts&lt;/a&gt; 0.4. 为Grails应用提供了一种使用DAO的方式；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/external-config-reload"&gt;external-config-reload&lt;/a&gt; 0.4.8. 轮询检测外部配置文件的变化（添加到grails.config.locations中的文件），当发现改变时，重新装入配置，并触发onConfigChange事件通知插件；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/hibernate-search"&gt;hibernate-search&lt;/a&gt; 0.4. 为Domcain class集成了Hibernate；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/infinispan"&gt;infinispan&lt;/a&gt; 0.4.5. 使用JBoss Infinispan分发缓存；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/jasypt-encryption"&gt;jasypt-encryption&lt;/a&gt; 1.1.0. 集成了Jasypt加密库；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/mahout-recommender"&gt;mahout-recommender&lt;/a&gt; 0.5.2. 在你的工程中使用Apache Mahout推荐算法；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/marshallers"&gt;marshallers&lt;/a&gt; 0.1.1. 轻松注册和使用支持分层配置的自定义XML和JSON marshaller；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/pusher"&gt;pusher&lt;/a&gt; 0.2. pusher.com REST api的包装器； api&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/simpledb"&gt;simpledb&lt;/a&gt; 0.3. 将AWS SimpleDB数据 存储集成到Grails中，并提供了基于它的GORM API；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-core"&gt;spring-security-core&lt;/a&gt; 1.2.7.1. 官方Grails安全插件：集成了Spring Security；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-mock"&gt;spring-security-mock&lt;/a&gt; 1.0.0. 支持Spring Security的模拟认证。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/ewolff/status/158889193462964224"&gt;@ewolff&lt;/a&gt;：Stralsund召开的技术讨论，关于&lt;a target="_blank" href="https://search.twitter.com/search?q=%23adessoAG"&gt;#adessoAG&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;，&lt;a target="_blank" href="http://t.co/JkqqRUof"&gt;http://t.co/JkqqRUof&lt;/a&gt; 2月2日&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/aaronzirbes/status/159027155123179520"&gt;@aaronzirbes&lt;/a&gt;：我刚为使用&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Shibboleth"&gt;#Shibboleth&lt;/a&gt;的伙计们发布了一个&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; Spring Security插件。请查看 @ &lt;a target="_blank" href="http://t.co/kHqF58qY"&gt;http://t.co/kHqF58qY&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/padcom/status/159033071243509760"&gt;@padcom&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23GContracts"&gt;#GContracts&lt;/a&gt;真棒！完全是&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;中成功使用闭包注解的一个案例&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/doylecentral/status/159390163536056320"&gt;@doylecentral&lt;/a&gt;：sts可以检查JSON构建器中的重复字符串。nb&lt;a target="_blank" href="https://search.twitter.com/search?q=%23sts"&gt;#sts&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/nagai_masato/status/159420574555324417"&gt;@nagai_masato&lt;/a&gt;：AstSpecBuilder是学习Groovy AST DSL的不错参考。 &lt;a target="_blank" href="http://t.co/LyhoHetB"&gt;http://t.co/LyhoHetB&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/glaforge/status/159595557587927040"&gt;@glaforge&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23tiobe"&gt;#tiobe&lt;/a&gt;重新回到了36的位置。就像悠悠球 &lt;img src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_biggrin.gi&lt;br /&gt;
    f" alt=":-D" class="wp-smiley" /&gt;  &lt;a target="_blank" href="http://t.co/lrWqUTmb"&gt;http://t.co/lrWqUTmb&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/hiranasu/status/159653624790786050"&gt;@hiranasu&lt;/a&gt;: Grails中使用Ajax太简单了，js小白也能搞定。太有趣了！&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/FinGGUG/status/159752373525422080"&gt;@FinGGUG&lt;/a&gt;：芬兰的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;/&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;开发者都在哪里？我们需要有人加入行动！请转发！&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/TimSporcic/status/159800977732534272"&gt;@TimSporcic&lt;/a&gt;：终于把GORM Recipe push到了GitHub。Grails 2.0中使用GORM的示例。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23GORM"&gt;#GORM&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;  &lt;a target="_blank" href="http://t.co/Wvj8Rc1c"&gt;http://t.co/Wvj8Rc1c&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/rstepanenko/status/159850047830372352"&gt;@rstepanenko&lt;/a&gt;：发布了&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23AWS"&gt;#AWS&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23simpledb"&gt;#simpledb&lt;/a&gt; gorm插件的0.3版本。发布公告：&lt;a target="_blank" href="http://t.co/IvBAV0xE"&gt;http://t.co/IvBAV0xE&lt;/a&gt;（数字类型的id，aws重试等）&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/milcom_/status/160025235712786432"&gt;@milcom_&lt;/a&gt;：reddit终于有了&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;专版。 &lt;img alt=":-)" class="wp-smiley" src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_smile.gif" /&gt;  &lt;a target="_blank" href="http://t.co/Pg1LTbLj"&gt;http://t.co/Pg1LTbLj&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/CedricChampeau/status/160135867413966849"&gt;@CedricChampeau&lt;/a&gt;：我在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;用户组里关于静态类型检查的幻灯 &lt;a target="_blank" href="http://t.co/8AjXvWqM"&gt;http://t.co/8AjXvWqM&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/nmartignole/status/160263565369020416"&gt;@nmartignole&lt;/a&gt;：法国南部的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;使用者，现在在索菲亚，安提波利斯有一个Groovy/Grails用户组。&lt;a target="_blank" href="http://t.co/8bE92CQs"&gt;http://t.co/8bE92CQs&lt;/a&gt; cc &lt;a target="_blank" href="https://twitter.com/#!/sebi2706"&gt;@sebi2706&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/nobusue/status/160302854437994496"&gt;@nobusue&lt;/a&gt;：官方认可！翻译文档&amp;ldquo;Grails框架参考文档&amp;rdquo;&lt;a target="_blank" href="http://t.co/bJpXnped"&gt;http://t.co/bJpXnped&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TE&lt;br /&gt;
    XT=grails&amp;amp;FRMT=0"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_c&lt;br /&gt;
    tl2%3AucQuickBar%3As_rawwords=grails"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/SpringSourceJob"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobs.vmware.com/search?q=springsource"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/GCSdigitalmedia/status/158890230773067776"&gt;@GCS digitalmedia&lt;/a&gt;: Looking for Java Groovy/Grails developers for an immediate start, please contact Kevin on 020 7710 4121&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/albertovilches/status/159214638989455361"&gt;@albe rtovilches&lt;/a&gt;: ?Alg&amp;uacute;n programador Groovy &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; est&amp;aacute; buscando trabajo en Madrid? que se ponga en contacto conmigo! &lt;img alt=":)" class="wp-smiley" src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_smile.gif" /&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/392"&gt;Java/Grails Application Developer at Devis in Arlington, VA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/bredo/status/159655348221911040"&gt;@bredo&lt;/a&gt;: We&amp;rsquo;re hiring! Looking for a Grails/Java developer &lt;a target="_blank" href="http://t.co/pLTDu0A2"&gt;http://t.co/pLTDu0A2&lt;/a&gt; &amp;ndash; fun team, fun project, great tech, cake, booze, beauty, clerkenwell&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/BKBRecruiter/status/159712551209410560"&gt;@BKBRec ruiter&lt;/a&gt;: Searching for a Groovy and Grails developer in Toronto if interested Msg me&amp;hellip; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23in"&gt;#in&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/394"&gt;Software Engineer at SRA International in Charlottesville, VA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.totaljobs.com/JobSearch/JobDetails.aspx?JobId=52646781"&gt;Web Developer / Grails Developer in Northamptonshire&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/395"&gt;Grails Web Developer at Coresystems AG in Windisch, Switzerland&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Looking-Lead-Developer-migrate-ERP-3975&lt;br /&gt;
    7.S.88755333?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=88755333"&gt;Looki ng for a Lead Developer to migrate ERP systems based in SilverStream over to Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.excella.com/careers/javajvm-languages-developer.aspx"&gt;Java/ JVM Languages Developer at Excella&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.acrede.net/job-vacancies/"&gt;Grails Developers at Acrede&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.bullhornreach.com/job/187981_java-dev-grails-nashville-tn"&gt; Java Dev &amp;ndash; Grails at Moxy in Nashville, TN&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/noelwiland/status/160002500915765249"&gt;@noelwila nd&lt;/a&gt;: NOW HIRING: Senior Level Developer with experience with RESTful Web Services &amp;amp; Grails Framework. Please contact me if you are interested. n&amp;hellip;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.jobsite.co.uk/job/lead-java-developer-architect-groovy-grai&lt;br /&gt;
    ls-941716618"&gt;Lead Java Developer / Architect &amp;ndash; Groovy, Grails in Northampton&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.tecnoempleo.com/oferta-empleo-madrid/java-spring-grails/rf-&lt;br /&gt;
    3036pbba1c00b08b939d"&gt;Desarrollador Junior de Java &amp;ndash; Madrid&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.it-jobbank.dk/da/job--freelance-grails-java-udviklere--5044&lt;br /&gt;
    5298.job?cid=msearch_careerjet_itjobsdk,msearch_careerjet"&gt;Freelance Grails/Java udviklere &amp;ndash; K?benhavn&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.aplitrak.com/?adid=Y2lhcmFuLm9yZWdhbi45Mjc0Mi50d2lAaHVudHJl&lt;br /&gt;
    c3MuYXBsaXRyYWsuY29t"&gt;Web Developer, Grails / ColdFusion, London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.devbistro.com/jobs/143256"&gt;Sr. JAVA/Groovy Grails Developer&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.ziprecruiter.com/job/Groovy-Grails-Java-NYC-9-Months-80-C2C&lt;br /&gt;
    /485a1dd2/"&gt;Groovy Grails / Java | NYC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.vivonet.com/about-us/careers/sr-grails-java-developer"&gt;Sr Grails / Java Developer in Vancouver, BC&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.springio.net/"&gt;Spring I/O 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;February 16&lt;sup&gt;th&lt;/sup&gt; and 17&lt;sup&gt;th&lt;/sup&gt; in Madrid&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Seattle-Groovy/events/48327722/"&gt;Thursday, March 8, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-03%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/vpXZXkwRQMX9-mvyCQY6COQKexg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vpXZXkwRQMX9-mvyCQY6COQKexg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/vpXZXkwRQMX9-mvyCQY6COQKexg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vpXZXkwRQMX9-mvyCQY6COQKexg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=RAaD02WyrJg:wu3vj6uGwU8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=RAaD02WyrJg:wu3vj6uGwU8:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=RAaD02WyrJg:wu3vj6uGwU8:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/RAaD02WyrJg" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-03%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/10">IDE</category>
 <category domain="http://www.groovyq.net/taxonomy/term/21">nosql</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/spock">Spock</category>
 <category domain="http://www.groovyq.net/taxonomy/term/15">依赖管理</category>
 <category domain="http://www.groovyq.net/taxonomy/term/22">前端开发</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/11">权限</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Sun, 22 Jan 2012 10:07:20 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">559 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-03%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2012-02）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/NvDTUs2AJ5k/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-02%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a title=" This Week in Grails (2012-01)" href="http://burtbeckwith.com/blog/?p=114356" rel="bookmark"&gt;This Week in Grails (2012-02)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;Gr8Conf欧洲大会本周公布了&lt;a target="_blank" href="http://www.gr8conf.eu/content/eu2012/"&gt;他们网站的新形象&lt;/a&gt;（基于&lt;a target="_blank" href="http://www.weceem.org/weceem/"&gt;Weceem&lt;/a&gt;）而且他们的&lt;a target="_blank" href="http://www.gr8conf.eu/content/eu2012/cfp"&gt;论文征集工作&lt;/a&gt;已经启动。如果你想在哥本哈根大会上发言，请提交你的方案，截至日期是2月15日。&lt;a target="_blank" href="http://grails.org/plugins/"&gt;插件门户&lt;/a&gt;最近有些新特性。插件页面现在显示的是BuildConfig.groovy的声明语法，而不是使用install-plugin命令。例如，&lt;a target="_blank" href="http://grails.org/plugin/spring-security-core"&gt;spring-security-core&lt;/a&gt;插件的内容是：&lt;code&gt;compile &amp;quot;:spring-security-core:1.2.7&amp;quot;&lt;/code&gt;。使用到外部jar资源的插件也会显示这些信息，比如&lt;a target="_blank" href="http://grails.org/plugin/spring-mobile"&gt;spring-mobile&lt;/a&gt;。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;插件现在显示了使用数据（尽管数字还不是很有效）。spring-security-core插件显示出&amp;ldquo;约35%的Grails用户在使用&amp;rdquo;。&lt;/p&gt;
&lt;p&gt;Peter开始整理Grails的&lt;a href="http://grails.1312388.n4.nabble.com/ANN-New-project-for-Grails-HOWTOs-td4285638.html" target="_blank"&gt;HOWTO指南汇总&lt;/a&gt;。希望这是一个大的汇总，由核心团队和社区创建的。&lt;/p&gt;
&lt;p&gt;Bobby Warner本周带来了2个视频，都是关于CoffeeScript的。请看这里： &lt;a href="http://www.bobbywarner.com/2012/01/09/getting-groovy-with-coffeescript/" target="_blank"&gt;Groovy使用CoffeeScript&lt;/a&gt;和&lt;a href="http://www.bobbywarner.com/2012/01/12/another-adventure-with-grails-and-coffeescript/" target="_blank"&gt;使用Grails和CoffeeScript的另一次冒险&lt;/a&gt;。&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a target="_blank" href="http://burtbeckwith.com/blog/?cat=32"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a target="_blank" href="http://feeds.feedburner.com/this-week-in-grails"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.vitoria-gasteiz.org/"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://t.co/"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.nabiladouani.fr/"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;div class="toc"&gt;&lt;a href="#miscellaneous"&gt;杂七杂八&lt;/a&gt;&lt;br /&gt;
&lt;a href="#plugins"&gt;插件&lt;/a&gt;&lt;br /&gt;
&lt;a href="#tweets"&gt;有趣的嘀咕&lt;/a&gt;&lt;br /&gt;
&lt;a href="#jobs"&gt;工作&lt;/a&gt;&lt;br /&gt;
&lt;a href="#meetups"&gt;用户组和会议&lt;/a&gt;&lt;/div&gt;
&lt;hr /&gt;
&lt;div id="miscellaneous"&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.io/post/15613554536" target="_blank"&gt;自定义GORM实现&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.io/post/15622232580" target="_blank"&gt;GORM-JPA插件新版本问世&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.io/post/15664759905" target="_blank"&gt;Grails路线图更新&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.io/post/15568051467" target="_blank"&gt;GMock 0.8.2发布，支持Grails 2.0&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mrhaki.blogspot.com/2012/01/grails-goodness-generate-links-outside.html" target="_blank"&gt;Grails精粹：在Controller或Tag库之外生成Link&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://githire.com/about" target="_blank"&gt;githire&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.objectpartners.com/2012/01/12/generating-excel-from-grails/" target="_blank"&gt;Grails中生成Excel&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://tradeshift.com/blog/grails-at-tradeshift/" target="_blank"&gt;Tradeshift上的Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kousenit.wordpress.com/2012/01/13/elvis-carried-away-by-spaceships/" target="_blank"&gt;猫王被宇宙飞船带走了（译注：双关语，分别对应Groovy的spaceship、elvis操作符）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mrhaki.blogspot.com/2012/01/grails-goodness-date-request-parameter.html" target="_blank"&gt;Grails精粹：日期请求参数的值转换&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.tomcatexpert.com/blog/2012/01/04/year-review-2011" target="_blank"&gt;2011年度回顾（Tomcat Expert）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://seeallhearall.blogspot.com/2012/01/remoting-groovy-with-generated-closures.html" target="_blank"&gt;远程执行Groovy闭包&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.andresteingress.com/2012/01/13/gsheets-a-groovy-builder-based-on-apache-poi/" target="_blank"&gt;GSheets &amp;ndash; 基于Apache POI的Groovy构建器&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://andreasarledal.github.com/blog/2012/01/15/gr8-expectations/" target="_blank"&gt;Gr8愿望&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;好主意；尽管不确定最后一项能否做到&lt;img class="wp-smiley" alt=";)" src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_wink.gif" /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://piedradigital.blogspot.com/2012/01/aplicaciones-multi-tenant-en-grails.html" target="_blank"&gt;Aplicaciones Multi-Tenant en Grails usando Multi-Tenant-Core plugin y Single-Tenant Mode&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://grooovygeorge.wordpress.com/2012/01/12/shifting-weceem-cms-to-grails-2-0/" target="_blank"&gt;将Weceem CMS迁移至Grails 2.0&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-09" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-09&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-10" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-10&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-13" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-13&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.springsource.org/node/3361" target="_blank"&gt;Spring每周观察，2012年1月10日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周发布了4个新插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/foundation" target="_blank"&gt;foundation&lt;/a&gt; 2.1.4.1. 提供了Foundation CSS框架的资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/fbootstrapp" target="_blank"&gt;fbootstrapp&lt;/a&gt; 0.1.1. 提供了FBootstrapp CSS框架的资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-mock" target="_blank"&gt;spring-security-mock&lt;/a&gt; 0.9.8. 支持Spring Security的模拟认证；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/jquery-mobile-scaffolding" target="_blank"&gt;jquery-mobile-scaffolding&lt;/a&gt; 0.1. 提供了可在脚手架中使用的移动模板。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有21个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/atmosphere" target="_blank"&gt;atmosphere&lt;/a&gt; 0.4.2. 提供了与Atmosphere项目（一种 轻便的AjaxPush/Comet和WebSocket框架）的集成；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/bubbling" target="_blank"&gt;bubbling&lt;/a&gt; 2.1.4. 集成了Bubbling Library YUI扩展；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/build-info" target="_blank"&gt;build-info&lt;/a&gt; 1.2.1. 提供了显示War文件基本信息的controller/view；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/commentable" target="_blank"&gt;commentable&lt;/a&gt; 0.7.6. 将Domain Class中的注释进行标注，使用Tag库或者部分模板将注释集成的View中；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/cucumber" target="_blank"&gt;cucumber&lt;/a&gt; 0.2.2. 用Cucumber测试 你的Grails应用；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/dao" target="_blank"&gt;dao&lt;/a&gt; 0.4.2. 运行grails-app/dao目录建立bean。参见&lt;a target="_blank" href="https://github.com/basejump/grails-dao"&gt;https://github.com/basejump/grails-dao&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/dojo" target="_blank"&gt;dojo&lt;/a&gt; 1.7.1.3. 添加Dojo javascript 工具；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/excel-import" target="_blank"&gt;excel-import&lt;/a&gt; 1.0.0. 使用Apache POI的Excel &amp;amp; CSV导入&amp;amp;导出；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/facebook-sdk" target="_blank"&gt;facebook-sdk&lt;/a&gt; 0.1.2. 允许你的应用使用Facebook 平台和在Facebook.com或Web站点（使用Facebook连接）&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/geolocation" target="_blank"&gt;geolocation&lt;/a&gt; 0.4. 支持HTML5的geolocation，并提供了一些实用的方法来计算距离和范围检查；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/gorm-jpa" target="_blank"&gt;gorm-jpa&lt;/a&gt; 1.0.0.M1. 针对JPA 1.0的GORM实现；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/grails-ui" target="_blank"&gt;grails-ui&lt;/a&gt; 1.2.3. 为使用YUI的ajaxy组件提供了标准的UI&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/hibernate-jpa-provider" target="_blank"&gt;hibernate-jpa-provider&lt;/a&gt; 1.0.0.M1. 将Hibernate作为JPA提供者集成起来；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/jasper" target="_blank"&gt;jasper&lt;/a&gt; 1.5.1. 使用JasperReports；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/jquery-validation-ui" target="_blank"&gt;jquery-validation-ui&lt;/a&gt; 1.2.3. 无需JavaScript即可进行客户端 验证；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/rateable" target="_blank"&gt;rateable&lt;/a&gt; 0.7.1. 为 Domain对象的评分提供了通用的机制；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/release" target="_blank"&gt;release&lt;/a&gt; 1.0.1. 将Grails插件发布到公共或私有仓库中；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/routing" target="_blank"&gt;routing&lt;/a&gt; 1.1.6. 利用Camel直接给grails- routing插件提供了JMS集成；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/screencasts" target="_blank"&gt;screencasts&lt;/a&gt; 0.5.6. 提供了对于视频的上传、 管理和显示；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/svn" target="_blank"&gt;svn&lt;/a&gt; 1.0.2. 提供SVNKit依赖；SvnClient类使其能更好地与Subversion 协作，与Release插件集成；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/uploadr" target="_blank"&gt;uploadr&lt;/a&gt; 0.5.8. HTML5拖拽文件上传器。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/smaldini/status/156883033927057408" target="_blank"&gt;@smaldini&lt;/a&gt;：带有事件机制和Spring集成实现的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;插件平台进展不错。 &amp;ndash; 目标是尽快发布&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/grails_rocks/status/156883362034888704" target="_blank"&gt;@grails_rocks&lt;/a&gt;：啊，&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;功能测试插件2.0（更新自之前的1.5）问世了。新的REST API测试模式、修订bug等。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/GavinInNY/status/156948993467883520" target="_blank"&gt;@GavinInNY&lt;/a&gt;：捣鼓&lt;a target="_blank" href="https://twitter.com/#!/grailsframework"&gt;@grailsframework&lt;/a&gt;的&lt;a target="_blank" href="https://twitter.com/#!/ApacheShiro"&gt;@ApacheShiro&lt;/a&gt;文档。有谁愿意帮助？&lt;a target="_blank" href="https://t.co/pgE8dM22"&gt;https://t.co/pgE8dM22&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/ldaley/status/157024104116006912" target="_blank"&gt;@ldaley&lt;/a&gt;：下周，我要去波特兰进行Gradle培训（仍然还有位子：&lt;a target="_blank" href="http://t.co/Wee0pVII"&gt;http://t.co/Wee0pVII&lt;/a&gt;），如果有人想谈谈Gradle、Grails、Geb等。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/pniederw/status/157318548698578945" target="_blank"&gt;@pniederw&lt;/a&gt;：我一直想搞&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;的命名参数。是时候行动了 &lt;a target="_blank" href="https://t.co/w6GD59Wv"&gt;https://t.co/w6GD59Wv&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/glaforge/status/157444386379137024" target="_blank"&gt;@glaforge&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23springio"&gt;#springio&lt;/a&gt; 2012（2月16～17日，马德里）相当不错，关于 &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23gcontracts"&gt;#gcontracts&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23cloudfoundry"&gt;#cloudfoundry&lt;/a&gt;的演讲！快去看看！&lt;a target="_blank" href="http://t.co/UWR4h2uK"&gt;http://t.co/UWR4h2uK&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/CedricChampeau/status/157597446019629056" target="_blank"&gt;@CedricChampeau&lt;/a&gt;：从&lt;a target="_blank" href="https://twitter.com/#!/nantesjug"&gt;@nantesjug&lt;/a&gt;返回。我的幻灯&amp;ldquo;介绍&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;中的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23DSL"&gt;#DSL&lt;/a&gt;&amp;rdquo; &lt;a target="_blank" href="http://t.co/7MFJr3sK"&gt;http://t.co/7MFJr3sK&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/tahmed/status/157714774224941057" target="_blank"&gt;@tahmed&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23OpenLogic"&gt;#OpenLogic&lt;/a&gt;宣布了2011年开源趋势报告。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%2311"&gt;#11&lt;/a&gt;在全面增长。&lt;a target="_blank" href="http://t.co/YF8wE5R0"&gt;http://t.co/YF8wE5R0&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/grailsframework/status/157756610436009984" target="_blank"&gt;@grailsframework&lt;/a&gt;：谁在马德里或者附近？可以看看Spring IO &amp;ndash; 2月份的一个大会，会讨论&lt;a target="_blank" href="https://search.twitter.com/search?q=%23springframework"&gt;#springframework&lt;/a&gt; &amp;amp; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;的所有内容 &amp;ndash; &lt;a target="_blank" href="http://t.co/OZT64FBZ"&gt;http://t.co/OZT64FBZ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/nikostheimpaler/status/158365028121190402" target="_blank"&gt;@nikostheimpaler&lt;/a&gt;：将遗留的完成一半的项目迁移的Grails上。3个小时内大致完成了90%。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23imsold"&gt;#imsold&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0" target="_blank"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails" target="_blank"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails" target="_blank"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/SpringSourceJob" target="_blank"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/search?q=springsource" target="_blank"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/sebi2706/status/156732540558909440" target="_blank"&gt;@sebi2706&lt;/a&gt;: Wants to work with &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; and other exciting technos while living on the french Riviera ? please DM me or RT &lt;a target="_blank" href="https://search.twitter.com/search?q=%23sun"&gt;#sun&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23sea"&gt;#sea&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/SENIOR-GRAILS-SERVER-DEVELOPER-WELLESLEY-39757.S.88908453?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=88908453" target="_blank"&gt;Senior Grails Server Developer at Mobiquity in Wellesley, MA or Providence, RI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/amontalenti/status/158234616937979905" target="_blank"&gt;@amontalenti&lt;/a&gt;: Any software engineers interested in a senior development role at a startup using &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; or &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;?  DM or @ me for more information. &lt;a target="_blank" href="https://search.twitter.com/search?q=%23in"&gt;#in&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/DimitrisTI/status/156341977040949250" target="_blank"&gt;@DimitrisTI&lt;/a&gt;: ?&amp;pi;&amp;omicron;&amp;iota;&amp;omicron;? &amp;theta;?&amp;lambda;&amp;epsilon;&amp;iota; &amp;nu;&amp;alpha; &amp;epsilon;&amp;phi;&amp;alpha;&amp;rho;&amp;mu;?&amp;sigma;&amp;epsilon;&amp;iota; (? &amp;nu;&amp;alpha; &amp;alpha;&amp;pi;&amp;omicron;&amp;kappa;&amp;tau;?&amp;sigma;&amp;epsilon;&amp;iota;) &amp;tau;&amp;eta;&amp;nu; &amp;epsilon;&amp;mu;&amp;pi;&amp;epsilon;&amp;iota;&amp;rho;?&amp;alpha; &amp;tau;&amp;omicron;&amp;upsilon; &amp;sigma;&amp;epsilon; Grails &amp;sigma;&amp;epsilon; &amp;nu;?&amp;omicron;, &amp;epsilon;&amp;nu;&amp;delta;&amp;iota;&amp;alpha;&amp;phi;?&amp;rho;&amp;omicron;&amp;nu; project @ me&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/carribus/status/156163739849207808" target="_blank"&gt;@carribus&lt;/a&gt;: Can anyone point me in the direction of a &lt;a target="_blank" href="https://search.twitter.com/search?q=%23JavaEE"&gt;#JavaEE&lt;/a&gt;/&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; on &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; guru who would be interested in a lucrative opportunity?&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mariocruz/status/156540250867499008" target="_blank"&gt;@mariocruz&lt;/a&gt;: Looking for a Java / Grails Developer temp to perm in Coral Gables spread the word.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/BKBRecruiter/status/156458181214740480" target="_blank"&gt;@BKBRecruiter&lt;/a&gt;: Searching for a Java / Groovy and Grails Developer if interested Msg me @  &lt;a href="mailto:bbarry@bevertec.com"&gt;bbarry@bevertec.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/DedicatedTech/status/156407664195289089" target="_blank"&gt;@DedicatedTech&lt;/a&gt;: Java &amp;ndash; Groovy/Grails position in NYC. Anyone know someone who is looking for employment? &lt;a target="_blank" href="http://t.co/yLVa1qgM"&gt;http://t.co/yLVa1qgM&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="Multiple opportunities for Open Source Architects, Engineers &amp;amp; Consultants (Java/Spring/Groovy Grails etc)" target="_blank"&gt;http://www.linkedin.com/jobs?viewJob=&amp;amp;jobId=2035879&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/JuDelisle/status/157919209546985472" target="_blank"&gt;@JuDelisle&lt;/a&gt;: Recherche un d&amp;eacute;veloppeur Groovy (Grails) pour un mandat d&amp;eacute;butant &amp;agrave; la mi-f&amp;eacute;vrier &amp;ndash; pendant 8 mois. Centre-ville de Montr&amp;eacute;al. &lt;a href="mailto:julie@intellis&amp;lt;/a&amp;gt;&amp;hellip;&lt;br /&gt;
    &amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&lt;br /&gt;
    &amp;lt;a target="&gt;Analyste programmeur Groovy (Grails) &amp;ndash; Contractuel, Montr&amp;eacute;al&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/SENIOR-BUSINESS-SYSTEMS-ANALYST-PROGRAMMER-39757.S.87493982?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=87493982" target="_blank"&gt;Senior Business Systems Analyst Programmer &amp;ndash; Java Technical Lead in Mumbai, India&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Looking-Lead-Developer-migrate-ERP-39757.S.88755333?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=88755333" target="_blank"&gt;Looking for a Lead Developer to migrate ERP systems based in SilverStream over to Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jobsite.co.uk/job/lead-java-developer-architect-groovy-grails-941628036" target="_blank"&gt;Lead Java Developer / Architect &amp;ndash; Groovy, Grails in Northampton, UK&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/MansfieldNeil/status/156317733334683648" target="_blank"&gt;@MansfieldNeil&lt;/a&gt;: New requirement for a Junior Groovy on Grails developer &amp;ndash; Berlin &amp;ndash; 6 Months ++ please contact me on &lt;a href="mailto:neil.mansfield@darwinrecruitment.com"&gt;neil.mansfield@darwinrecruitment.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.seek.com.au/Job/web-developer-grails-java-j2ee/in/brisbane-brisbane/21401617" target="_blank"&gt;Web Developer Grails / Groovy / Java in Brisbane, AU&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.careers24.com/jobs/adverts/183696-developer-ruby-groovy-grails-bryanston-sandton-south-africa/" target="_blank"&gt;Developer: Ruby/ Groovy/ Grails in Bryanston, Sandton, South Africa&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/dba-consult-are-seeking-2-906257.S.88572780?view=&amp;amp;gid=906257&amp;amp;type=member&amp;amp;item=88572780" target="_blank"&gt;Seeking 2-4 Senior Java developers with Groovy, grails, drools competences for contract in Copenhagen&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.bctechnology.com/scripts/show_job.cfm?id=90624" target="_blank"&gt;Sr Grails / Java Developer in Vancouver&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.theitjobboard.co.uk/IT-Job/Java-Developer/8429031/en/" target="_blank"&gt;Java Developer in London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.aplitrak.com/?adid=Y2lhcmFuLm9yZWdhbi45Mjc0Mi50d2lAaHVudHJlc3MuYXBsaXRyYWsuY29t" target="_blank"&gt;Web Developer, Grails / ColdFusion, London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.authenticjobs.com/jobs/11289/grails-software-engineer" target="_blank"&gt;Grails Software Engineer at Bloom Health in Minneapolis&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Paris-Groovy-Grails/events/45108892/" target="_blank"&gt;Thursday, January 19, 2012 &amp;ndash; Groovy 2.0 : un pas vers le typage statique&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Paris Groovy and Grails User Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/java-161/events/44263902/" target="_blank"&gt;Monday, January 23, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-02%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/qzUYpoyOPKNDq8kSNYD3aXzDyeY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qzUYpoyOPKNDq8kSNYD3aXzDyeY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/qzUYpoyOPKNDq8kSNYD3aXzDyeY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qzUYpoyOPKNDq8kSNYD3aXzDyeY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=NvDTUs2AJ5k:k6O-0uCTlQc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=NvDTUs2AJ5k:k6O-0uCTlQc:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=NvDTUs2AJ5k:k6O-0uCTlQc:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/NvDTUs2AJ5k" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-02%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/taxonomy/term/9">GPars</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/spock">Spock</category>
 <category domain="http://www.groovyq.net/taxonomy/term/15">依赖管理</category>
 <category domain="http://www.groovyq.net/taxonomy/term/22">前端开发</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/11">权限</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 16 Jan 2012 13:22:59 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">558 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-02%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2012-01）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/y-T0WE3uXlI/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-01%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a rel="bookmark" href="http://burtbeckwith.com/blog/?p=1143" title=" This Week in Grails (2012-01)"&gt;This Week in Grails (2012-01)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;Graeme更新了他的博客，并承诺会经常更新 &amp;ndash; 看看这个&lt;a href="http://grails.io/" target="_blank"&gt;新发现&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;本周，Bobby Warner发布了一个不错的视频，关于使用Grails 2.0和Spring Security &amp;ndash; &lt;a href="http://www.bobbywarner.com/2012/01/05/jump-into-grails-2-0/" target="_blank"&gt;跳进Grails 2.0&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;Jochen Theodorou写了一篇关于&lt;a href="http://blackdragsview.blogspot.com/2012/01/invokedynamic-api.html" target="_blank"&gt;invokedynamic API&lt;/a&gt;的深入概览。我想在它下沉前，我应该多读几次。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a target="_blank" href="http://burtbeckwith.com/blog/?cat=32"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a target="_blank" href="http://feeds.feedburner.com/this-week-in-grails"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.vitoria-gasteiz.org/"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://t.co/"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.nabiladouani.fr/"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;div class="toc"&gt;&lt;a href="#miscellaneous"&gt;杂七杂八&lt;/a&gt;&lt;br /&gt;
&lt;a href="#plugins"&gt;插件&lt;/a&gt;&lt;br /&gt;
&lt;a href="#tweets"&gt;有趣的嘀咕&lt;/a&gt;&lt;br /&gt;
&lt;a href="#jobs"&gt;工作&lt;/a&gt;&lt;br /&gt;
&lt;a href="#meetups"&gt;用户组和会议&lt;/a&gt;&lt;/div&gt;
&lt;hr /&gt;
&lt;div id="miscellaneous"&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.infoq.com/interviews/javaone2011-graeme-rocher-interview" target="_blank"&gt;Graeme Rocher关于Grails 2.0和Polyglot持久化的采访&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.io/post/15345119630/musings-on-maven" target="_blank"&gt;对于Maven的沉思&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.infoq.com/presentations/Running-Spring-Java-and-Scala-Apps-on-Heroku" target="_blank"&gt;在Heroku上运行Spring Java和Scala应用&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;James Ward在SpringOne/2GX上的演讲，包括我的Grails演示&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.swierczynski.net/2012/01/cloud-foundry-grails-lightning-fast-deployment/" target="_blank"&gt;Cloud Foundry + Grails = 轻快部署&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://agrawalgagan.blogspot.com/2012/01/groovygrails-integration-tests-for.html" target="_blank"&gt;Groovy/Grails：多线程应用的集成测试&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.delucas.com.ar/2012/01/desplegar-una-aplicacion-grails-2-0-en-heroku/" target="_blank"&gt;部署在heroku上的Grails 2.0应用&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-02" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-02&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-03" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-03&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-04" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-04&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2012-01-05" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2012-01-05&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.springsource.org/node/3354" target="_blank"&gt;Spring每周观察，2012年1月3日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;有4个新发布的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/jxl" target="_blank"&gt;jxl&lt;/a&gt; 0.5. 使用JXL库将数据导入到Excel中；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/swiss-post-code" target="_blank"&gt;swiss-post-code&lt;/a&gt; 0.1.2. 提供所有可用的Swiss发布代码；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/ajax-proxy" target="_blank"&gt;ajax-proxy&lt;/a&gt; 0.1.1. Ajax Proxy插件（用于跨域请求）；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/facebook-sdk" target="_blank"&gt;facebook-sdk&lt;/a&gt; 0.1.1. 运行你的应用使用Facebook平台和在Facebook.com或Web站点（使用Facebook连接）开发Facebook应用。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有13个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/asynchronous-mail" target="_blank"&gt;asynchronous-mail&lt;/a&gt; 0.3. 通过将邮件存储在数据库，使用Quartz job异步发送邮件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/audit-trail" target="_blank"&gt;audit-trail&lt;/a&gt; 2.0.0. 为Domain Class创建/更新审计字段，当有新的插入或更新时，更新之；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/bulkload" target="_blank"&gt;bulkload&lt;/a&gt; 0.1.4. 导出或批量加载来自客户端 浏览器的一个给定的类的所有实例；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/compass-sass" target="_blank"&gt;compass-sass&lt;/a&gt; 0.6. Grails中支持Compass、SASS和SCSS。在run-app时自动 编译.scss/.sass，并添加了其他框架的功能；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/cucumber" target="_blank"&gt;cucumber&lt;/a&gt; 0.2.1. 用Cucumber测试 你的Grails应用；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/cxf-client" target="_blank"&gt;cxf-client&lt;/a&gt; 1.2.5. 使用现有（或新的）Apache CXF wsdl2java生成的内容调用SOAP服务；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/date-formatting" target="_blank"&gt;date-formatting&lt;/a&gt; 0.2.3. 为Date对象添加了转换成不同字符串格式的功能；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/facebook-graph" target="_blank"&gt;facebook-graph&lt;/a&gt; 0.14. 可访问Facebook图像API，使用Facebook认证协议更容易的开发单点登陆功能；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/jasper" target="_blank"&gt;jasper&lt;/a&gt; 1.3.0. 使用JasperReports；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/routing" target="_blank"&gt;routing&lt;/a&gt; 1.1.5. 利用Camel直接给grails- routing插件提供了JMS集成；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/routing-jms" target="_blank"&gt;routing-jms&lt;/a&gt; 1.1.5. 为routing 插件提供了ActiveMQ JMS支持；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/translate" target="_blank"&gt;translate&lt;/a&gt; 1.2.1. 使用Google翻译API将文本内容从一种 语言翻译为另一种语言&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/uploadr" target="_blank"&gt;uploadr&lt;/a&gt; 0.5.7. HTML5拖拽文件上传器。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/albertovilches/status/153663350503505920" target="_blank"&gt;@albertovilches&lt;/a&gt;：Conoc&amp;iacute;ais Ratpack? Un mini-framework web para Groovy inspirado en Sinatra &lt;a target="_blank" href="http://t.co/Ou5ks0Mq"&gt;http://t.co/Ou5ks0Mq&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/renescheibe/status/153908539411279872" target="_blank"&gt;@renescheibe&lt;/a&gt;：有人使用&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Java7"&gt;#Java7&lt;/a&gt; Update2么？我看到运行一些&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;基本语法的性能比&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Java6"&gt;#Java6&lt;/a&gt;提升了20%。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/smakela_/status/153952027926474753" target="_blank"&gt;@smakela_&lt;/a&gt;：&lt;a target="_blank" href="https://twitter.com/#!/FinGGUG"&gt;@FinGGUG&lt;/a&gt;是&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Finnish"&gt;#芬兰&lt;/a&gt;的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;和&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;用户组&lt;a target="_blank" href="http://t.co/Yw7Cma3P"&gt;http://t.co/Yw7Cma3P&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/grailsframework"&gt;@grailsframework&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/grailsinfo"&gt;@grailsinfo&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/ReaktorNow"&gt;@ReaktorNow&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/FinJUG"&gt;@FinJUG&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/renescheibe/status/153972732353183744" target="_blank"&gt;@renescheibe&lt;/a&gt;：希望&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;更&lt;a target="_blank" href="https://search.twitter.com/search?q=%23invokedynamic"&gt;#invokedynamic&lt;/a&gt;些。在blackdrag的第一版，无类型斐波纳契数列的性能提高40%。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/smakela_/status/154447986687090688" target="_blank"&gt;@smakela_&lt;/a&gt;：关于Spring Security 3.1不错的视频 &lt;a target="_blank" href="http://t.co/BrNt0SBu"&gt;http://t.co/BrNt0SBu&lt;/a&gt; 甚至于如果你使用&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;插件，这个也值得一看。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/grails_rocks/status/154879225155952640" target="_blank"&gt;@grails_rocks&lt;/a&gt;：对于那些正在/已经使用了Functional Test插件的人，我已经开始1.5版本的工作了，会修复所有Grails的兼容问题。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/scottyfred/status/154937555685605377" target="_blank"&gt;@scottyfred&lt;/a&gt;：&lt;a target="_blank" href="https://twitter.com/#!/graemerocher"&gt;@graemerocher&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;和&lt;a target="_blank" href="https://search.twitter.com/search?q=%23maven"&gt;#maven&lt;/a&gt;：就像花生酱和机油一样，他们会走到一起。尽管知道这是必需的，祝好运吧。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/rfletcherEW/status/155311282160017409" target="_blank"&gt;@rfletcherEW&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; Fields插件的正确文档：&lt;a target="_blank" href="http://t.co/nGgWTpos"&gt;http://t.co/nGgWTpos&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/eqe/status/155328867110887424" target="_blank"&gt;@eqe&lt;/a&gt;：旧金山，发出需要Java/Grails的海报。&lt;a target="_blank" href="http://t.co/iQ84LojY"&gt;http://t.co/iQ84LojY&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/marcoVermeulen/status/155577006099152896" target="_blank"&gt;@marcoVermeulen&lt;/a&gt;：我的博客换装了：&lt;a target="_blank" href="http://t.co/72CY9Z3m"&gt;http://t.co/72CY9Z3m&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/seletz/status/155998058981761024" target="_blank"&gt;@seletz&lt;/a&gt;：&lt;a target="_blank" href="http://t.co/JCaytnvK"&gt;http://t.co/JCaytnvK&lt;/a&gt;上的非常不错的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;示例，&amp;mdash; 在GitHub上还有一个离线版本：&lt;a target="_blank" href="https://t.co/71Yeiz6V"&gt;https://t.co/71Yeiz6V&lt;/a&gt; thanks! &lt;a target="_blank" href="https://twitter.com/#!/mrhaki"&gt;@mrhaki&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0" target="_blank"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails" target="_blank"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails" target="_blank"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/SpringSourceJob" target="_blank"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/search?q=springsource" target="_blank"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/job/Palo-Alto-Member-of-Technical-Staff-Integration-Engineering-Job-CA-94301/1319958/" target="_blank"&gt;MTS Integration Engineering at VMworld Labs in Cambridge, MA or Palo Alto, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://careers.stackoverflow.com/jobs/15318/sr-developer-and-do-gooder-energy-saving-saas-energyscorecards" target="_blank"&gt;Sr Developer and Do-gooder for energy-saving SaaS (Groovy, Grails) at EnergyScoreCards in NYC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/386" target="_blank"&gt;Grails Developer &amp;ndash; Wavre, Belgium&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/marty_pleasant/status/154245920559611905" target="_blank"&gt;@marty_pleasant&lt;/a&gt;: Are you a Java Developer that wants to work with Grails?  I have a great 6 month project for you! 651-788-9632&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/388" target="_blank"&gt;Experienced Grails Developer (contract) at SupaJam in Westerham, Kent, UK&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/387" target="_blank"&gt;Junior Grails Developer (contract) at SupaJam in Westerham, Kent, UK&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/Ramona_Batista/status/154654048186941440" target="_blank"&gt;@Ramona_Batista&lt;/a&gt;: Need &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Java"&gt;#Java&lt;/a&gt; Dev for &lt;a target="_blank" href="https://search.twitter.com/search?q=%23NYC"&gt;#NYC&lt;/a&gt; Job&amp;hellip;email resume to &lt;a href="mailto:ramona@trineaspects.com"&gt;ramona@trineaspects.com&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/groovymag"&gt;@groovymag&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/grailsframework"&gt;@grailsframework&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/grailspodcast"&gt;@grailspodcast&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://boston.craigslist.org/gbs/sof/2784411096.html" target="_blank"&gt;Grails Software Developer (Boston/Cambridge)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/390" target="_blank"&gt;Web Application Developer (contract) at Closely in Denver, CO&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/389" target="_blank"&gt;Senior Software Engineer (contract) at Taulia Inc. in San Francisco, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Grails-Boston/boards/view/viewthread?thread=19215732" target="_blank"&gt;Grails Developer (contract) in Scottsdale, AZ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.netvitesse.com/careers/lead-dev-web-voip" target="_blank"&gt;Lead d&amp;eacute;veloppeur(se) web / VoIP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/alexandrevs/status/155710898810527746" target="_blank"&gt;@alexandrevs&lt;/a&gt;: Vaga para trabalhar com JBoss, Java, Grails e Groovy em Holambra -SP. Interessados falar comigo.(RT pls)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/DedicatedTech/status/155367146069835776" target="_blank"&gt;@DedicatedTech&lt;/a&gt;: New to Twitter! I&amp;rsquo;m a Technical Recruiter with a Java &amp;ndash; Groovy/Grails position in NYC. Anyone know someone who is looking for an assignment?&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.bestinfotechjobs.com/maryland-jobs/bethesda/senior-java-developer-with-spring,-hibernate,-sql,-hql,-grails-J3G87H77YXZJDXTZX9N.html" target="_blank"&gt;Senior Java Developer with Spring, Hibernate, SQL, HQL, Grails in Bethesda, MD&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/dwmarley/status/155035342662139904" target="_blank"&gt;@dwmarley&lt;/a&gt;: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23canada"&gt;#canada&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23jobs"&gt;#jobs&lt;/a&gt; Now Hiring: Java Integration (Camel) and Grails Developer &amp;ndash; Work From home on open source projects &lt;a href="http://www.middleware360.com" title="www.middleware360.com"&gt;www.middleware360.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.bullhornreach.com/job/170714_agile-javaj2ee-programmer-analyst-with-grails-westlake-tx" target="_blank"&gt;Agile Java/J2EE Programmer Analyst with Grails in Westlake, TX&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jobsite.co.uk/job/lead-java-developer-architect-groovy-grails-941628036" target="_blank"&gt;Bookmark and Share Lead Java Developer / Architect &amp;ndash; Groovy, Grails in Northampton, UK&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.supajam.com/page/jobs" target="_blank"&gt;Experienced Grails Developer and Junior Grails Developer at SupaJam&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://public.bullhornstaffing.com/JobBoard/Standard/BHContent_JobDetail.cfm?jobPostingID=6200&amp;amp;privateLabelID=3701" target="_blank"&gt;Java Developer at CareWorks Technologies in Columbus, OH&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.ziprecruiter.com/job/Groovy-Grails-Java-NYC-9-Months-80-C2C/485a1dd2/" target="_blank"&gt;Groovy Grails / Java in NYC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.auctelia.com/blog/fr/2011/12/web-developer/" target="_blank"&gt;D&amp;eacute;veloppeur Web Java / Grails at Auctelia in Court-Saint-Etienne, Belgium&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mbnrecruitment/status/154221547350003712" target="_blank"&gt;@mbnrecruitment&lt;/a&gt;: Fantastic opportunity just in for a Java Developer (Grails) &amp;ndash; North West, c￡45K. Visit &lt;a target="_blank" href="http://t.co/xgROIElU"&gt;http://t.co/xgROIElU&lt;/a&gt; or contact Joshua Smith.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/DIS_IT_Berlin/status/154549769879044096" target="_blank"&gt;@DIS_IT_Berlin&lt;/a&gt;: Groovy/Grails Projekt in Berlin, ca. 2 bis 3 Monate. Wer hat Kapazit?t? &lt;a target="_blank" href="https://search.twitter.com/search?q=%23freelance"&gt;#freelance&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23berlin"&gt;#berlin&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23dev"&gt;#dev&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Seattle-Groovy/events/32345342/" target="_blank"&gt;Thursday, January 12, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://nejug.org/events/show/134" target="_blank"&gt;Thursday, January 12, 2012 &amp;ndash; What&amp;rsquo;s new with Grails 2.0&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;New England Java Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Paris-Groovy-Grails/events/45108892/" target="_blank"&gt;Thursday, January 19, 2012 &amp;ndash; Groovy 2.0 : un pas vers le typage statique&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Paris Groovy and Grails User Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/java-161/events/44263902/" target="_blank"&gt;Monday, January 23, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-01%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/naWJEFrScKK3iGF4Vg58yiorfSg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/naWJEFrScKK3iGF4Vg58yiorfSg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/naWJEFrScKK3iGF4Vg58yiorfSg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/naWJEFrScKK3iGF4Vg58yiorfSg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=y-T0WE3uXlI:-LaY4MDtjkQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=y-T0WE3uXlI:-LaY4MDtjkQ:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=y-T0WE3uXlI:-LaY4MDtjkQ:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/y-T0WE3uXlI" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-01%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 09 Jan 2012 07:50:36 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">557 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882012-01%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-52）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/tPlGBK_-82I/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-52%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a rel="bookmark" href="http://burtbeckwith.com/blog/?p=1126" title=" This Week in Grails (2011-52)"&gt;This Week in Grails (2011-52)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;新年好！这是2011年最后一期&amp;ldquo;Grails每周观察&amp;rdquo;。我回顾了以前的51次发布，统计了这一年来的数字（包括本期）：有840条杂七杂八、693条嘀咕、888个职位（有重复）、167个新插件（只有3周没有发布新插件）和724更新插件。我没有统计聚会，因为许多重复的。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;对于Grails/Groovy生态系统，这是风生水起的一年：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Grails发布了1.3的最后一版（1.3.7）以及一个大版本，2.0。&lt;/li&gt;
&lt;li&gt;伴随Groovy 2.0 beta（现在是Beta 2）的发布，还发布了4个Groovy 1.7.x的版本（1.7.7-1.7.10）以及6个1.8.x的版本（1.8.0-1.8.5）。&lt;/li&gt;
&lt;li&gt;Gradle也有一些里程碑的版本发布，这些发布终止于1.0 beta版的发布，最终1.0版本发布。&lt;/li&gt;
&lt;li&gt;发布了几个Groovy++的版本，但目前的开发陷入停顿，因为Groovy代码正在添加一些静态特性。&lt;/li&gt;
&lt;li&gt;SpringSource Tool Suite发布了2.5.2、2.6.0、2.6.1、2.7.0、2.7.1、2.7.2、2.8.0和2.9.0.M1，Groovy-Eclipse插件也发布了几个；这两个工具都增加了大量有助于Groovy/Grails开发的新特性。&lt;/li&gt;
&lt;li&gt;Grails现在有一个不错的选项，可以选择部署在不同的云上，感谢aws (Amazon)、cloud-foundry、cloud-bees和heroku等插件。&lt;/li&gt;
&lt;li&gt;Marco Vermeulen为Grails/Groovy创建了Ubuntu程序包&lt;/li&gt;
&lt;li&gt;St&amp;eacute;phane Maldini和Damien Vitrac重新修改了&lt;a target="_blank" href="http://grails.org/doc/latest/"&gt;参考文档&lt;/a&gt;的外观和体验。&lt;/li&gt;
&lt;li&gt;我们将JIRA从Codehaus迁移到了&lt;a target="_blank" href="http://jira.grails.org/"&gt;http://jira.grails.org/&lt;/a&gt;，现在每个插件都有自己的项目，而不是一个大项目中的一个组件。&lt;/li&gt;
&lt;li&gt;Erik Pragt和Marcin Erdmann用他们的discobot项目做了不少工作让Groovy跑在Android上。我希望能看到更多进展。&lt;/li&gt;
&lt;li&gt;我们现在有了&amp;ldquo;Spring每周观察&amp;rdquo;、&amp;ldquo;Gradle每周观察&amp;rdquo;，和偶尔的&amp;ldquo;Discobot每周观察&amp;rdquo;系列。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;有9个大会是完全基于Groovy生态环境或者有不少相关的讨论：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;马德里的Spring IO大会&lt;/li&gt;
&lt;li&gt;哥本哈根的GR8Conf欧洲大会&lt;/li&gt;
&lt;li&gt;明尼阿波利斯的GR8Conf美洲大会&lt;/li&gt;
&lt;li&gt;克拉科夫的GeeCON 2011大会&lt;/li&gt;
&lt;li&gt;芝加哥的SpringOne/2GX大会&lt;/li&gt;
&lt;li&gt;马德里的Greach大会&lt;/li&gt;
&lt;li&gt;杜塞尔多夫的CamelCaseCon大会&lt;/li&gt;
&lt;li&gt;布里斯班的GR8Conf澳洲大会&lt;/li&gt;
&lt;li&gt;伦敦的Groovy &amp;amp; Grails eXchange大会&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;一些出色的博客上有不少酷文：Mr Haki（&lt;a target="_blank" href="http://mrhaki.blogspot.com/"&gt;http://mrhaki.blogspot.com/&lt;/a&gt;）、Tomas Lin（&lt;a target="_blank" href="http://fbflex.wordpress.com/"&gt;http://fbflex.wordpress.com/&lt;/a&gt;）、Bobby Warner（&lt;a target="_blank" href="http://www.bobbywarner.com/"&gt;http://www.bobbywarner.com/&lt;/a&gt;）和Jochen Theodorou（&lt;a target="_blank" href="http://blackdragsview.blogspot.com/"&gt;http://blackdragsview.blogspot.co m/&lt;/a&gt;）。我不会特别点名 &amp;ndash; 到他们的博客上仔细阅读每篇文章 &lt;img src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /&gt; 但要在Mr Haki的博客上多花点时间；到目前为止，他已经发表了近&lt;em&gt;一万&lt;/em&gt;篇博文。&lt;/p&gt;
&lt;p&gt;我发布了10个新插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;database-migration&lt;/li&gt;
&lt;li&gt;spring-security-kerberos&lt;/li&gt;
&lt;li&gt;spring-security-appinfo&lt;/li&gt;
&lt;li&gt;cloud-foundry&lt;/li&gt;
&lt;li&gt;cloud-foundry-ui&lt;/li&gt;
&lt;li&gt;standalone&lt;/li&gt;
&lt;li&gt;memcached&lt;/li&gt;
&lt;li&gt;cloud-support&lt;/li&gt;
&lt;li&gt;atomikos&lt;/li&gt;
&lt;li&gt;heroku&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;（如果算上在webxml中为filter-mapping元素顺序添加一个新特性，那就是11个）。&lt;/p&gt;
&lt;p&gt;这个系列已经被翻译成西班牙文（Aitor Alzola）、中文（Jian Hu）、葡萄牙文（Paulo Pereira）和意大利文（Luca Canducci）。这些伙计每周都做一件伟大的事情。&lt;/p&gt;
&lt;p&gt;如果2011年是发端，2012年将是成为Grials开发者不错的一年。&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a target="_blank" href="http://burtbeckwith.com/blog/?cat=32"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a target="_blank" href="http://feeds.feedburner.com/this-week-in-grails"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.vitoria-gasteiz.org/"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://t.co/"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.nabiladouani.fr/"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://mrhaki.blogspot.com/2011/12/grails-goodness-customize-url-format.html"&gt;Grails小技巧：自定义URL格式&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.bobbywarner.com/2011/12/29/using-stripe-with-grails/"&gt;Grails中使用Stripe&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.bobbywarner.com/2011/12/30/using-stripe-with-grails-continued/"&gt;Grails中使用Stripe（续）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.intelligrape.com/blog/2011/12/29/grails-custom-data-binding-in-3-simple-steps/"&gt;简单3步完成Grails自定义个数据绑定&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.intelligrape.com/blog/2011/12/29/closure-caching-for-increased-performance-memoize/"&gt;使用闭包缓存提高性能（.memoize()）（&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.mopri.de/?p=2379"&gt;Grails 2.0 &amp;amp; Jenkins&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://roshandawrani.wordpress.com/2011/12/27/grails-geb-executing-multiple-functional-test-phases-together/"&gt;Grails，Geb：同时执行多个功能测试阶段&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-12-26"&gt;http://observato riodegrails.com/hoy/?date=2011-12-26&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-12-28"&gt;http://observato riodegrails.com/hoy/?date=2011-12-28&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.springsource.org/node/3349"&gt;Spring年度回顾&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;有2个新插件发布：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/stripe"&gt;stripe&lt;/a&gt;  1.0.M6. 使用Stripe处理信用卡交易；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/quartz2"&gt;quartz2&lt;/a&gt;  0.2.2. 集成了quartz-scheduler.org的Quartz 2框架。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还更新了18个插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/activiti"&gt;activiti&lt;/a&gt;  5.8.2. 集成了Activiti BPM组件以及工作流系统；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/activiti-spring-security"&gt;activiti-spring-sec urity&lt;/a&gt;  0.4.6. 将Spring Security跟Activiti集成，以自定义IdentityService；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/ajax-uploader"&gt;ajax-uploader&lt;/a&gt;  1.0. Andrew Valum的文件上传器非常不错，该插件则实现了对该组件封装的标签库；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/browser-detection"&gt;browser-detection&lt;/a&gt;  0.3.3. 为浏览器的检测提供服务和标签库；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/bulkload"&gt;bulkload&lt;/a&gt;  0.1.2. 导出或批量加载来自客户端浏览器的一个给定的类的所有实例；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/cloud-foundry"&gt;cloud-foundry&lt;/a&gt;  1.2.1. 集成了Cloud Foundry的云部署服务，以便从命令行管理云中运行的Grails应用；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/cxf-client"&gt;cxf-client&lt;/a&gt;  1.2.4. 使用现有（或新的）Apache CXF wsdl2java生成的内容调用SOAP服务；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/jasypt-encryption"&gt;jasypt-encryption&lt;/a&gt;  1.0.1. 集成了Jasypt加密库；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/oauth-scribe"&gt;oauth-scribe&lt;/a&gt;  1.3. 使用Scribe框架，将oAuth与Grails集成；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/quick-input"&gt;quick-input&lt;/a&gt;  0.1.2. 为大规模输入提供了新的input标签；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/rabbitmq"&gt;rabbitmq&lt;/a&gt;  0.3.3. 集成了Rabbit MQ消息；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/routing"&gt;routing&lt;/a&gt;  1.1.4. 利用Camel直接给grails- routing插件提供了JMS集成；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/routing-jms"&gt;routing-jms&lt;/a&gt;  1.1.4. 为routing插件提供了ActiveMQ JMS支持；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-core"&gt;spring-security-core&lt;/a&gt;  1.2.7. 官方Grails安全插件：集成了Spring Security；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-facebook"&gt;spring-security-facebook&lt;/a&gt;  0.5.4. Facebook认证插件，作为Grails Spring Security核心插件的扩展；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-radius"&gt;spring-security-radius&lt;/a&gt;  1.1.1. 支持Spring Security的RADIUS；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/twitter-bootstrap"&gt;twitter-bootstrap&lt;/a&gt;  1.4.0.14. Twitter Bootstrap CSS框架资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/viaboxx-dbmigrate"&gt;viaboxx-dbmigrate&lt;/a&gt;  1.3.2. 为你的项目建立和迁移数据库；&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/epragt/status/151384219036299264"&gt;@epragt&lt;/a&gt;：刚完成了我的第一个&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; pull请求。&lt;a target="_blank" href="https://t.co/V5QGs6sR"&gt;https://t.co/V5QGs6sR&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/kenliu/status/151419710536302592"&gt;@kenliu&lt;/a&gt;：在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23heroku"&gt;#heroku&lt;/a&gt;上玩转&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; 2.0.0。flash-to-bang的时间居然比AWS Elastic Beanstalk还快。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/foo2bar/status/151435486429327360"&gt;@foo2bar&lt;/a&gt;：刚发布了支持灾备的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; Spring Security RADIUS插件。文档：&lt;a target="_blank" href="http://t.co/zl9FYxhJ"&gt;http://t.co/zl9FYxhJ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tednaleid/status/151525013290352641"&gt;@tednaleid &lt;/a&gt;：发布了Grails jasypt-encryption 1.0.1，更新到了Grails 2.0 &amp;amp; jaspyt 1.9&amp;hellip;感谢Jon Palmer的pull请求 &lt;a target="_blank" href="https://t.co/X5KDXeUz"&gt;https://t.co/X5KDXeUz&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/sapsiero/status/151726710130360321"&gt;@sapsiero&lt;/a&gt;：刚为&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; quick input &lt;a target="_blank" href="https://search.twitter.com/search?q=%23plugin"&gt;#plugin&lt;/a&gt;的新功能添加了一个小的演示。可以看这里：&lt;a target="_blank" href="http://t.co/zUlzd2fM"&gt;http://t.co/zUlzd2fM&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/marcinerdmann/status/151799915490717696"&gt;@marcinerdmann&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23discobot"&gt;#discobot&lt;/a&gt;的重大进展 &amp;ndash; 刚把gradle-discobot-plugin发布到了基于maven库的Github上，现在我们只需要完成&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;的补丁工作！&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/valenmope/status/151803455193890817"&gt;@valenmope &lt;/a&gt;：如果你想参加在西班牙举行的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23spring"&gt;#spring&lt;/a&gt;和&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;的活动，现在注册已经开放了&lt;a target="_blank" href="http://t.co/9x0whkhk"&gt;http://t.co/9x0whkhk&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23springio"&gt;#springio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/skepticalhumor/status/151837645968908288"&gt;@skepticalhumor&lt;/a&gt;：我希望&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;是下一个COBOL。所以我的下半生将会用这个语言来写代码。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/wangjammer5/status/152352831150624768"&gt;@wangjammer5&lt;/a&gt;：我之前错过了 &amp;ndash; &lt;a target="_blank" href="https://twitter.com/#!/glaforge"&gt;@glaforge&lt;/a&gt;上一个很有用的页面，上面有2011年Groovy &amp;amp; Grails Exchange大会的所有视频的链接 &lt;a target="_blank" href="http://t.co/Z5y1u7Ct"&gt;http://t.co/Z5y1u7Ct&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/mittie/status/152788848689164288"&gt;@mittie&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23gpars"&gt;#gpars&lt;/a&gt; 1.0已经就绪。第一个Beta版已经问世&lt;a target="_blank" href="http://t.co/nC52ErTm"&gt;http://t.co/nC52ErTm&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23concurrency"&gt;#concurrency&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/honzam399/status/152789645896323072"&gt;@honzam399 &lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23gpars"&gt;#gpars&lt;/a&gt; 1.0已经就绪了。第一个版本在gpars.codehaus.org/Download上可以下载了 &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23concurrency"&gt;#concurrency&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/grails_rocks/status/153508454282170368"&gt;@grails _rocks&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;插件平台工作的许多部分已经就绪。预见几周后就可以&amp;ldquo;尝试&amp;rdquo;了！&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/SpringSourceJob"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobs.vmware.com/search?q=springsource"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.technojobs.co.uk/job.phtml/771697"&gt;Java developer &amp;ndash; Groovy/ Grails &amp;ndash; London &amp;ndash; 6 month rolling contract&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://us.bstonetech.com/jobs/2011/12/sr-j2ee-developer-federal-practice-dc-area/"&gt;Sr. J2EE Developer &amp;ndash; Federal Practice &amp;ndash; DC Area&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.centuria.com/current-openings/colorado/sr-developer-grails/"&gt;Senior Grails Developer in Loveland, CO&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/rahulsom/status/152419103649443840"&gt;@rahulsom&amp;lt;!-- a--&gt;: Let me know if you want to work at a &lt;/a&gt;&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23HealthCare"&gt;#HealthCare&lt;/a&gt; company in San Jose, CA &amp;ndash; The Engineering team at &lt;a target="_blank" href="https://twitter.com/#!/CertifyData"&gt;@CertifyData&lt;/a&gt; needs UI, BE, QA ppl&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/CV_TechSearch/status/152107251547648000"&gt;@CV_Te chSearch&lt;/a&gt;: seeking Grails framework and Groovy language developer with &lt;a target="_blank" href="https://search.twitter.com/search?q=%23ecommerce"&gt;#ecommerce&lt;/a&gt; exposure &lt;a target="_blank" href="https://search.twitter.com/search?q=%23NYC"&gt;#NYC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/385"&gt;Software Developer &amp;ndash; Grails, Java, Mobile and etc &amp;ndash; Sao Paulo, Brazil&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobview.monster.com/Groovy-Grails-Development-Java-Job-Toronto-ON-CA-105148333.aspx"&gt;Groovy &amp;amp; Grails Developer (contract) in Toronto&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Sr-Grails-contract-developer-in-39757.S.86922636?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=86922636"&gt;Sr. Grails contract developer in Piscataway, NJ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/brandyjfordcpc/status/152439639360290818"&gt;@bran dyjfordcpc&lt;/a&gt;: Hiring Now Software Engineer II exp with Java Web Standards Server side JVM Grails framework Direct Hire Paid Relocation contact Brandyjford&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.programmez.com/emploi.php?did=JHP0816NQSKM984FM6Z"&gt;D&amp;eacute;velop peur Java / J2EE exp&amp;eacute;riment&amp;eacute; / Grails / CDI / IDF/ &amp;ndash; Paris&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Seattle-Groovy/events/32345342/"&gt;Thursday, January 12, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://nejug.org/events/show/134"&gt;Thursday, January 12, 2012 &amp;ndash; What&amp;rsquo;s new with Grails 2.0&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;New England Java Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Paris-Groovy-Grails/events/45108892/"&gt;Thursday, January 19, 2012 &amp;ndash; Groovy 2.0 : un pas vers le typage statique&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Paris Groovy and Grails User Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/java-161/events/44263902/"&gt;Monday, January 23, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-52%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/tiIuwVBx8coR4DnNV4cq-hmLexE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/tiIuwVBx8coR4DnNV4cq-hmLexE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/tiIuwVBx8coR4DnNV4cq-hmLexE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/tiIuwVBx8coR4DnNV4cq-hmLexE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=tPlGBK_-82I:NQp3v4dUZac:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=tPlGBK_-82I:NQp3v4dUZac:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=tPlGBK_-82I:NQp3v4dUZac:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/tPlGBK_-82I" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-52%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/taxonomy/term/9">GPars</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/13">Griffon</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/23">Groovy++</category>
 <category domain="http://www.groovyq.net/taxonomy/term/10">IDE</category>
 <category domain="http://www.groovyq.net/taxonomy/term/21">nosql</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/spock">Spock</category>
 <category domain="http://www.groovyq.net/taxonomy/term/15">依赖管理</category>
 <category domain="http://www.groovyq.net/taxonomy/term/22">前端开发</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/11">权限</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Tue, 03 Jan 2012 03:09:10 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">556 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-52%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-51）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/sBuWkBspiuk/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-51%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a title=" This Week in Grails (2011-51)" href="http://burtbeckwith.com/blog/?p=1117" rel="bookmark"&gt;This Week in Grails (2011-51)&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本周较略显安静 &amp;ndash; 人们还在热议Grails 2.0的发布。虽有些波折，但事情发展还不错，新版本似乎让人们惊呆了。&lt;/p&gt;
&lt;p&gt;Groovy团队发布了&lt;a target="_blank" href="https://glaforge.appspot.com/article/groovy-1-8-5-and-second-beta-of-2&lt;br /&gt;
-0-out"&gt;Groovy 1.8.5和2.0 Beta 2&lt;/a&gt;。貌似对Invoke Dynamic的支持、静态类型检查和初步的静态编译工作随之而来。&lt;/p&gt;
&lt;p&gt;若你在波士顿地区，我会在1月12日在NEJUG有一个题为&lt;a target="_blank" href="http://nejug.org/events/show/134"&gt;&amp;ldquo;Grails 2.0和Groovy 1.8有哪些新内容&amp;quot;&lt;/a&gt;的演讲。&lt;/p&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a href="http://burtbeckwith.com/blog/?cat=32" target="_blank"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a href="http://feeds.feedburner.com/this-week-in-grails" target="_blank"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.vitoria-gasteiz.org/" target="_blank"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.groovyq.net/" target="_blank"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://t.co/" target="_blank"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.nabiladouani.fr/" target="_blank"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/blog/view/Mark.Baars/Groovy+%26+Grails+Training+in+2&lt;br /&gt;
    012" target="_blank"&gt;2012年Groovy &amp;amp; Grails培训&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.springsource.org/2011/12/21/spring-framework-moves-to-gith&lt;br /&gt;
    ub/" target="_blank"&gt;Spring Framework迁移至GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://glaforge.appspot.com/article/caelyf-0-1-a-lightweight-groovy-t&lt;br /&gt;
    oolkit-for-cloud-foundry" target="_blank"&gt;Caelyf 0.1，面向Cloud Foundry的Groovy轻便小工具&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://forums.gradle.org/gradle/topics/new_website_for_gradle_org" target="_blank"&gt;gradle.org的新站点&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://adhockery.github.com/blog/2011/12/23/wiring-taglib-dependencies&lt;br /&gt;
    -in-unit-tests/" target="_blank"&gt;在Grails 2的单元测试中装配Taglib的依赖&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.oio.de/2011/12/21/grails-database-queries-criteria-builder&lt;br /&gt;
    -vs-where-queries/" target="_blank"&gt;Grails数据库查询 &amp;ndash; Criteria Builder vs. Where查询&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jroller.com/vaclav/entry/the_promises_to_trust" target="_blank"&gt;言而有信&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.infoq.com/presentations/What-is-New-in-Groovy-1-8-and-Beyon&lt;br /&gt;
    d" target="_blank"&gt;Groovy 1.8及后续版本的新内容&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-12-19" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-19&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-12-20" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-20&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-12-21" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-21&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-12-22" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-22&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-12-23" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-23&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://forums.gradle.org/gradle/topics/this_week_in_gradle_2011_51" target="_blank"&gt;Gradle每周观察（2011-51）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.springsource.org/node/3344" target="_blank"&gt;Spring每周观察，2011年12月20日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周有3个最新发布的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/feature-toggle" target="_blank"&gt;feature-toggle&lt;/a&gt; 0.1. 该插件为实现可配置特性提供了标签库和动态方法；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/mahout-recommender" target="_blank"&gt;mahout-recommender&lt;/a&gt; 0.5.1. 在你的工程中使用Apache Mahout推荐算法；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/quick-input" target="_blank"&gt;quick-input&lt;/a&gt; 0.1.1. 为大规模输入提供了新的input标签。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有16个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/activiti" target="_blank"&gt;activiti&lt;/a&gt; 5.8.1. 整合了Activiti BPM Suit和工作流系统；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/address-lookup-zpfour" target="_blank"&gt;address-lookup-zpfour&lt;/a&gt; 0.1.2. 提供了地址查询服务和标签，如果你有来自Semaphore公司的ZP4 HTTPSERV服务运行在你的网络上，你能够使用这个插件很容的添加地址查询；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/browser-detection" target="_blank"&gt;browser-detection&lt;/a&gt; 0.3.2. 为浏览器的检测提供 服务和标签库；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/bulkload" target="_blank"&gt;bulkload&lt;/a&gt; 0.1.1. 导出或批量加载来自客户端浏览器的一个给定 的类的所有实例；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/cloud-bees" target="_blank"&gt;cloud-bees&lt;/a&gt; 0.5.4. 为集成CloudBees客户端API，添加了脚本；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/constraints" target="_blank"&gt;constraints&lt;/a&gt; 0.7.0. 运行你能够为验证Domain对象创建自定义的Domain约束；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/geb" target="_blank"&gt;geb&lt;/a&gt; 0.6.2. Geb适合JVM上无头网页浏览，适合自动化的Web功能测试；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/greenmail" target="_blank"&gt;greenmail&lt;/a&gt; 1.3.1. 为GreenMail提供了包装器，为显示&amp;lsquo;sent&amp;rsquo;消息提供了视图&amp;ndash; 对测试很有用；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/joda-time" target="_blank"&gt;joda-time&lt;/a&gt; 1.3.1. 在Grails中集成 了Joda Time date/time库；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/mail" target="_blank"&gt;mail&lt;/a&gt; 1.0. 应用发送邮件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/modernizr" target="_blank"&gt;modernizr&lt;/a&gt; 2.0.6. 提供了来自&lt;a target="_blank" href="http://www.modernizr.com/"&gt;http://www.modernizr.com/&lt;/a&gt;的Modernizr Javascript库资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/new-doc" target="_blank"&gt;new-doc&lt;/a&gt; 0.3.2. 为 Grails 2.0.x的Doc命令中额外功能提供了反向移植；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/sanitizer" target="_blank"&gt;sanitizer&lt;/a&gt; 0.7.1. 使用OWASP AntiSamy Filters净化标记（ HTML、XHTML、CSS）；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-facebook" target="_blank"&gt;spring-security-facebook&lt;/a&gt; 0.5.3. Facebook认证插件，作为Grails Spring Security核心插件的扩展；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-saml" target="_blank"&gt;spring-security-saml&lt;/a&gt; 1.0.0.M10. SAML 2.x支持Spring Security插件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/struts-menu" target="_blank"&gt;struts-menu&lt;/a&gt; 1.2.1. Struts Menu的Grails包装。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/darthvader42/status/149269686977175554" target="_blank"&gt;@darthvader42&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;提示：要想确切控制Servlet Filter的顺序，可以使用&lt;a target="_blank" href="http://t.co/4Nvk514I"&gt;http://t.co/4Nvk514I&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/FinGGUG/status/149812719749566464" target="_blank"&gt;@FinGGUG&lt;/a&gt;：号召&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Finland"&gt;#芬兰&lt;/a&gt;所有的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;/&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;用户，加入&lt;a target="_blank" href="https://twitter.com/#!/FinGGUG"&gt;@FinGGUG&lt;/a&gt;，芬兰Groovy/Grails用户组 &lt;a target="_blank" href="http://t.co/0l7oHJdD"&gt;http://t.co/0l7oHJdD&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/aurelienmaury/status/149832680412938240" target="_blank"&gt;@aurelienmaury&lt;/a&gt;：1月10日的Grails Dojo探索还有10个位子：&lt;a target="_blank" href="http://t.co/bhIajI7j"&gt;http://t.co/bhIajI7j&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23hateCrap"&gt;#hateCrap&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23loveGrails"&gt;#loveGrails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/rfletcherEW/status/149837322278535168" target="_blank"&gt;@rfletcherEW&lt;/a&gt;：用Jerry（&lt;a target="_blank" href="http://t.co/xG4fRgaM"&gt;http://t.co/xG4fRgaM&lt;/a&gt;对&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; GSP模板进行单元测试的基本示例：&lt;a target="_blank" href="https://t.co/j9y5titg"&gt;https://t.co/j9y5titg&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/tyama/status/150248357837811712" target="_blank"&gt;@tyama&lt;/a&gt;：GEP-10 &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;静态编译 &lt;a target="_blank" href="http://t.co/cza8pXeO"&gt;http://t.co/cza8pXeO&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/stevegood/status/150415604858372096" target="_blank"&gt;@stevegood&lt;/a&gt;：我的新站点，&lt;a target="_blank" href="http://t.co/7iaVFSwm"&gt;http://t.co/7iaVFSwm&lt;/a&gt;，用的是令人惊艳的默认&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; 2.0.0主题。绿色和灰色！ &lt;a target="_blank" href="https://search.twitter.com/search?q=%23iamnotadesigner"&gt;#iamnotadesigner&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TE&lt;br /&gt;
    XT=grails&amp;amp;FRMT=0" target="_blank"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails" target="_blank"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_c&lt;br /&gt;
    tl2%3AucQuickBar%3As_rawwords=grails" target="_blank"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/SpringSourceJob" target="_blank"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/search?q=springsource" target="_blank"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/382" target="_blank"&gt;Java + Grails Developer &amp;ndash; Berlin, Germany&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://recruitmentarea.com/?job_listing=opening-for-the-position-of-gr&lt;br /&gt;
    ails-developer" target="_blank"&gt;Opening for the position of Grails developer, Bengaluru&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/brandyjfordcpc/status/149160276313387008" target="_blank"&gt;@bran dyjfordcpc&lt;/a&gt;: Java Grails job! Mid to Sr level Java Grails SW Engineer needed for SOA Cloud Solutions experience with scripting languages OOA OOD&amp;hellip;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/383" target="_blank"&gt;Grails Developer Jr &amp;ndash; Mexico, DF, Mexico&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/twcrone/status/149514360446914560" target="_blank"&gt;@twcrone&lt;/a&gt; : If you are a hard working, open-minded &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23spring"&gt;#spring&lt;/a&gt; dev and you are willing to learn &lt;a target="_blank" href="https://search.twitter.com/search?q=%23tdd"&gt;#tdd&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;, come join us!&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/honzam399/status/149530511553998848" target="_blank"&gt;@honzam399 &lt;/a&gt;: Cool job at &lt;a target="_blank" href="https://twitter.com/#!/cakesolutions"&gt;@cakesolutions&lt;/a&gt; for &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;, &lt;a target="_blank" href="https://search.twitter.com/search?q=%23springframework"&gt;#springframework&lt;/a&gt; (and &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Scala"&gt;#Scala&lt;/a&gt;, &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Akka"&gt;#Akka&lt;/a&gt; &amp;amp; friends) geek. Exciting work, lots of open source! DM me.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/Jesse/status/150040966580015104" target="_blank"&gt;@Jesse&lt;/a&gt;: Looking to hire a Grails expert with knowledge of Facebook API local to Utah ASAP at &lt;a target="_blank" href="https://twitter.com/#!/LDSChurch"&gt;@LDSChurch&lt;/a&gt;. Plz send resumes to &lt;a href="mailto:facebook@ldschurch.org"&gt;facebook@ldschurch.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.aplitrak.com/?adid=Y2lhcmFuLm9yZWdhbi45Mjc0Mi50d2lAaHVudHJl&lt;br /&gt;
    c3MuYXBsaXRyYWsuY29t" target="_blank"&gt;Web Developer, Grails / ColdFusion, London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/linux_ska/status/149175965132668928" target="_blank"&gt;@linux_ska &lt;/a&gt;: &lt;a target="_blank" href="https://twitter.com/#!/neodevelop"&gt;@neodevelop&lt;/a&gt;  Muchachos, tengo dos vacantes para programadores grails en el DF, si saben de alg&amp;uacute;n interesado, ?nos lo pueden mandar?&amp;rdquo;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jobware.de//view/gzTY3NCsIwEISfxqPQTZpsIuzFV9B7SJPULhYM_UEK&lt;br /&gt;
    %2B_DGiwjDN8wcZjiTBXCoJXHYjlqokzoSyLuGiTDGHHtttM%2BqZEQLcURwQ1dw8MpbmQ4CwDOA&lt;br /&gt;
    l9fCD7rdZZ_aRL6stSSO80pp5vQMcc%2B8tfovEWjVG6dQ6ZO%2Btpkv20UzZRp%2BMvIB/index&lt;br /&gt;
    .html" target="_blank"&gt;Software-Entwickler (m/w) Java J2EE und Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.tecnoempleo.com/oferta-empleo-madrid/groovy-on-grails-alfre&lt;br /&gt;
    sco-str/rf-ecd0r95dbkad9uf084mb" target="_blank"&gt;Programador Java con Grails &amp;ndash; Madrid&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/aeischeid/status/149582246439952386" target="_blank"&gt;@aeischeid &lt;/a&gt;: &lt;a target="_blank" href="https://twitter.com/#!/globalvetlink"&gt;@globalvetlink&lt;/a&gt; is looking to hire. Good Javascript skills required, a little Grails experience a plus&lt;/li&gt;
&lt;li&gt;&lt;a href="http://ofertas-empleo.monster.es/Desarrollador-Java-y-J2EE-Groovy-y-Gr&lt;br /&gt;
    ails-trabajo-Las-Rozas-Madrid-Madrid-Espa%C3%B1a-104968525.aspx" target="_blank"&gt;Desarrollad or Java y J2EE. Groovy y Grails &amp;ndash; Madrid&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.kforce.com/Jobs/job.aspx?ID=2282&amp;amp;job=1696~AQG~1123033T&lt;br /&gt;
    1~99&amp;amp;keyword=&amp;amp;id=2219" target="_blank"&gt;Principle GUI Engineer (contract) in Newton, MA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/384" target="_blank"&gt;Sr. Grails Developer &amp;ndash; Piscataway, NJ&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Seattle-Groovy/events/32345342/" target="_blank"&gt;Thursday, January 12, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://nejug.org/events/show/134" target="_blank"&gt;Thursday, January 12, 2012 &amp;ndash; What&amp;rsquo;s new with Grails 2.0&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;New England Java Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Paris-Groovy-Grails/events/45108892/" target="_blank"&gt;Thursday, January 19, 2012 &amp;ndash; Groovy 2.0 : un pas vers le typage statique&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Paris Groovy and Grails User Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/java-161/events/44263902/" target="_blank"&gt;Monday, January 23, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-51%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/SmJmXO6c0RbCLBh7BtEoQ3Duadg/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SmJmXO6c0RbCLBh7BtEoQ3Duadg/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/SmJmXO6c0RbCLBh7BtEoQ3Duadg/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/SmJmXO6c0RbCLBh7BtEoQ3Duadg/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=sBuWkBspiuk:8-hA6obrkR0:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=sBuWkBspiuk:8-hA6obrkR0:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=sBuWkBspiuk:8-hA6obrkR0:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/sBuWkBspiuk" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-51%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/spock">Spock</category>
 <category domain="http://www.groovyq.net/taxonomy/term/15">依赖管理</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/11">权限</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Sun, 25 Dec 2011 10:48:28 +0000</pubDate>
 <dc:creator>huwh</dc:creator>
 <guid isPermaLink="false">555 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-51%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-50）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/jPP-d24Ln-M/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-50%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a title=" This Week in Grails (2011-50)" href="http://burtbeckwith.com/blog/?p=1110" rel="bookmark"&gt;This Week in Grails (2011-50)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;本周最大的新闻是&lt;a target="_blank" href="http://blog.springsource.org/2011/12/15/grails-2-0-released/"&gt;Grails 2.0的发布&lt;/a&gt;。似乎比预计的时间要长，原因是我们在等待&lt;a target="_blank" href="http://blog.springsource.org/2011/12/13/spring-framework-3-1-goes-ga/"&gt;Spring 3.1的发布&lt;/a&gt;，最终它还是发布了，是迄今为止影响最大的版本。有不少新的特性，可用性改进以及修复的bug。请看Peter的&lt;a target="_blank" href="http://blog.springsource.org/2011/12/14/countdown-to-grails-2-0-user-experience/"&gt;新可用性功能的演示&lt;/a&gt;。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;我们还公布了&lt;a href="http://blog.heroku.com/archives/2011/12/15/grails/" target="_blank"&gt;Heroku部署Grails应用上&lt;/a&gt;。&lt;a href="http://grails.1312388.n4.nabble.com/ANN-Heroku-plugin-released-td4200792.html" target="_blank"&gt;heroku插件&lt;/a&gt;让1.3.7或2.0应用的部署变得容易，可自动配置你的数据源、Mongo、Redis、Memcached和RabbitMQ。&lt;/p&gt;
&lt;p&gt;带有Groovy-Eclipse 2.6.0的&lt;a href="http://www.springsource.org/node/3333" target="_blank"&gt;STS 2.9.0.M1发布了&lt;/a&gt;。看看&lt;a href="http://docs.codehaus.org/display/GROOVY/Groovy-Eclipse+2.6.0+New+and+Noteworthy" target="_blank"&gt;新的值得看的&lt;/a&gt;特性。这是一个很长的列表。&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a target="_blank" href="http://burtbeckwith.com/blog/?cat=32"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a target="_blank" href="http://feeds.feedburner.com/this-week-in-grails"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.vitoria-gasteiz.org/"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://t.co/"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.nabiladouani.fr/"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blog.gr8conf.us/2011/12/call-for-presentations.html" target="_blank"&gt;美国的GR8大会 &amp;ndash; 演讲招募中&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mrhaki.blogspot.com/2011/12/some-groovy-love.html" target="_blank"&gt;Some Groovy Love&lt;img class="wp-smiley" alt=":-)" src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_smile.gif" /&gt; &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.infoq.com/presentations/Grails-in-the-Cloud" target="_blank"&gt;Peter Ledbrook的&amp;ldquo;Grails云中漫步&amp;rdquo;，2011年SpringOne 2GX大会上&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://codeisdesign.wordpress.com/2011/12/14/grails-spring-security-radius-plugin-and-mobile-one-time-password/" target="_blank"&gt;Grails Spring Security RADIUS 插件和Mobile一次性密码&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://swordsystems.com/2011/12/12/auto-create-user-domain-object-with-spring-security/" target="_blank"&gt;使用Spring Security自动创建User Domain对象&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://engineering.linkedin.com/frontend/leaving-jsps-dust-moving-linkedin-dustjs-client-side-templates" target="_blank"&gt;让JSP成为过眼云烟：将LinkedIn迁移到dust.js客户端模板&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.cavdar.net/2011/12/13/grails-bootstrap-amazon-jelastic-djacc-com/" target="_blank"&gt;Grails + Bootstrap + Amazon + Jelastic = djacc.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://wpfeiffe.blogspot.com/2011/12/notes-on-upgrading-to-grails-20-from.html" target="_blank"&gt;从Grail 1.3.7升级到Grails 2.0的注意事项&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-12-12" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-12&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-12-13" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-13&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-12-14" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-14&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-12-15" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-15&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-12-16" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-16&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://forums.gradle.org/gradle/topics/this_week_in_gradle_2011_49" target="_blank"&gt;Gradle每周观察（2011-49）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.springsource.org/node/3335" target="_blank"&gt;Spring每周观察，2011年12月13日（Spring 3.1 Edition）&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本站有5个新插件发布：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/bulkload" target="_blank"&gt;bulkload&lt;/a&gt; 0.1. 导出或批量加载来自客户端浏览器的一个给定的类的所有实例；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/sendgrid" target="_blank"&gt;sendgrid&lt;/a&gt; 0.1. 允许通过SendGrid的服务发送EMail；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-radius" target="_blank"&gt;spring-security-radius&lt;/a&gt; 1.0.0. 支持Spring Security的RADIUS；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/heroku" target="_blank"&gt;heroku&lt;/a&gt; 1.0. 集成了Heroku的云平台；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/raphael" target="_blank"&gt;raphael&lt;/a&gt; 2.0.1. 提供了JavaScript Vector Library Rapha&amp;euml;l &amp;ndash; 跨浏览器的矢量图形的简便方法。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有18个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/build-test-data" target="_blank"&gt;build-test-data&lt;/a&gt; 1.1.2. 通过自动注入约束可以很容易的创建测试数据；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/cloud-bees" target="_blank"&gt;cloud-bees&lt;/a&gt; 0.5.2. 为集成CloudBees客户端API，添加了脚本；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/cloud-support" target="_blank"&gt;cloud-support&lt;/a&gt; 1.0.8. 帮助Cloud插件更新来自于Cloud环境的服务提供商连接信息&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/csv" target="_blank"&gt;csv&lt;/a&gt; 0.3.1. 轻松解析和使用大量来自输入源的CSV；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/memcached" target="_blank"&gt;memcached&lt;/a&gt; 1.0.3.2. 帮助将Memcached集成为Hibernate 2级缓存提供者；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/mongodb" target="_blank"&gt;mongodb&lt;/a&gt; 1.0.0.RC3. 用于在MongoDB之上提供一个对象映射层；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/redis" target="_blank"&gt;redis&lt;/a&gt; 1.1. 集成了Redis数据存储；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/redis-gorm" target="_blank"&gt;redis-gorm&lt;/a&gt; 1.0.0.M8. 将Redis key/value数据存储集成到Grails，并为其提供类GORM API；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/release" target="_blank"&gt;release&lt;/a&gt; 1.0.0. 将Grails插件发布到公共或私有仓库中；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/remote-control" target="_blank"&gt;remote-control&lt;/a&gt; 1.2. 在远程的Grails应用中执行代码；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/remote-pagination" target="_blank"&gt;remote-pagination&lt;/a&gt; 0.2.8. 提供了分页标签，使用Ajax无需刷新页面即可完成列排序，并且仅装入所需对象列表；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/resources" target="_blank"&gt;resources&lt;/a&gt; 1.1.6. 资源管理和处理的框架；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/riak" target="_blank"&gt;riak&lt;/a&gt; 1.0.0.M4. 针对Riak NoSQL数据库的GORM；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-facebook" target="_blank"&gt;spring-security-facebook&lt;/a&gt; 0.5. Facebook认证，作为Spring Security核心插件的扩展；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/svn" target="_blank"&gt;svn&lt;/a&gt; 1.0.1. 提供SVNKit依赖； SvnClient类使其能更好地与Subversion协作，与Release插件集成；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/translate" target="_blank"&gt;translate&lt;/a&gt; 1.2. 使用Google翻译API将文本内容从一种语言翻译为另一种语言；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/twitter-bootstrap" target="_blank"&gt;twitter-bootstrap&lt;/a&gt; 1.4.0.13. Twitter Bootstrap CSS框架资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/uploadr" target="_blank"&gt;uploadr&lt;/a&gt; 0.5.6. HTML5拖拽文件上传器。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/tomaslin/status/146199989251608576" target="_blank"&gt;@tomaslin&lt;/a&gt;：伦敦的Grails的开发者 &amp;ndash; 谁来把hackgarten办成每月的活动？&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/jonathan_stott/status/146207954801131521" target="_blank"&gt;@jonathan_stott&lt;/a&gt;：刚发现STS中的Spring Insight &amp;ndash; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;应用性能调试无价宝！&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mittie/status/146235009269895168" target="_blank"&gt;@mittie&lt;/a&gt;：下一次&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;/&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;课程会在1月23日，&lt;a target="_blank" href="https://twitter.com/#!/skillsmatter"&gt;@skillsmatter&lt;/a&gt;，伦敦 &lt;a target="_blank" href="http://t.co/2XXdTa0E"&gt;http://t.co/2XXdTa0E&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/rfletcherEW/status/146273330129940480" target="_blank"&gt;@rfletcherEW&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;提示：如果零是有效值（如区分null），就不要使用int类型。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23twohourswasted"&gt;#twohourswasted&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/daveklein/status/146274053982916608" target="_blank"&gt;@daveklein&lt;/a&gt;：想要Grails电子书的伙计们：快速入门指南即将出版：它回来了！&lt;a target="_blank" href="http://t.co/HfUtzsdO"&gt;http://t.co/HfUtzsdO&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/vasya10/status/146618949625315328" target="_blank"&gt;@vasya10&lt;/a&gt;：20秒钟内5个java编译错误，都没有分号，md &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/werdnagreb/status/146673165920243713" target="_blank"&gt;@werdnagreb&lt;/a&gt;：帮忙规划下一版的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;-&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Eclipse"&gt;#Eclipse&lt;/a&gt;。你希望哪种重构和快速修复？ &lt;a target="_blank" href="http://t.co/h9WgqjFB"&gt;http://t.co/h9WgqjFB&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/clickonchris/status/146817876358217728" target="_blank"&gt;@clickonchris&lt;/a&gt;：我在7月份关于&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;/&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;的演讲，没有意识到今天才发布到网上 &lt;a target="_blank" href="http://t.co/1iSWLgXV"&gt;http://t.co/1iSWLgXV&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/graemerocher/status/146907141209473026" target="_blank"&gt;@graemerocher&lt;/a&gt;：为有兴趣创建GORM实现伙计们特意发布了最新的开发指南 &lt;a target="_blank" href="http://t.co/a3FMxeuC"&gt;http://t.co/a3FMxeuC&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23nosql"&gt;#nosql&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mittie/status/147004983991214080" target="_blank"&gt;@mittie&lt;/a&gt;：想看看到&lt;a target="_blank" href="https://twitter.com/#!/GeertjanW"&gt;@GeertjanW&lt;/a&gt;马上要出版的这本书：&lt;a target="_blank" href="http://t.co/qqbnobtl"&gt;http://t.co/qqbnobtl&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23netbeans"&gt;#netbeans&lt;/a&gt;中的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23griffon"&gt;#griffon&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/jameschesters/status/147354744015425538" target="_blank"&gt;@jameschesters&lt;/a&gt;：看这个&lt;a target="_blank" href="https://twitter.com/#!/glaforge"&gt;@glaforge&lt;/a&gt;在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grailsx"&gt;#grailsx&lt;/a&gt;上录制的&lt;a target="_blank" href="https://twitter.com/#!/hans_d"&gt;@hans_d&lt;/a&gt;的采访：&lt;a target="_blank" href="http://t.co/V7LLPTpi"&gt;http://t.co/V7LLPTpi&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/skillsmatter"&gt;@skillsmatter&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23gradle"&gt;#gradle&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23ggx"&gt;#ggx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mariawennestam/status/147356998160232450" target="_blank"&gt;@mariawennestam&lt;/a&gt;：对&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Spock"&gt;#Spock&lt;/a&gt;、&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Gradle"&gt;#Gradle&lt;/a&gt;感兴趣么？看看&lt;a target="_blank" href="https://twitter.com/#!/laforge"&gt;@laforge&lt;/a&gt;上&lt;a target="_blank" href="https://twitter.com/#!/ldaley"&gt;@ldaley&lt;/a&gt;的访谈，&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grailsx"&gt;#grailsx&lt;/a&gt;上录制的。&lt;a target="_blank" href="https://twitter.com/#!/skillsmatter"&gt;@skillsmatter&lt;/a&gt; here &lt;a target="_blank" href="http://t.co/Tgj0oCky"&gt;http://t.co/Tgj0oCky&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/FreshGroovy/status/147453372830715906" target="_blank"&gt;@FreshGroovy&lt;/a&gt;：Groovy新鲜事：Grails 2.0 GA发布了针对Ubuntu Linux的版本 &lt;a target="_blank" href="http://t.co/TOn94Tl2"&gt;http://t.co/TOn94Tl2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/sarbogast/status/147966690116907008" target="_blank"&gt;@sarbogast&lt;/a&gt;：第一次用ClearDB/MySQL测试上的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; 2，很有结论性。它是一个不错的产品。没有什么可以阻挡我们！&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/greach_es/status/148005473021476864" target="_blank"&gt;@greach_es&lt;/a&gt;：Ya est&amp;aacute; abierto el call for paper de Codemotion, enviad vuestras propuestas de charlas y talleres en &lt;a target="_blank" href="http://t.co/vMMYceyO"&gt;http://t.co/vMMYceyO&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mittie/status/148031939830484992" target="_blank"&gt;@mittie&lt;/a&gt;：我自己输入错误导致的笑话：grails upgradle &lt;img class="wp-smiley" alt=":-)" src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_smile.gif" /&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/blukasz/status/148474001507885056" target="_blank"&gt;@blukasz&lt;/a&gt;：刚知道：在波兰会有一个名为33degree的大会，&lt;a target="_blank" href="https://twitter.com/#!/glaforge"&gt;@glaforge&lt;/a&gt;等人会参加。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="http://t.co/sZEgqW9n"&gt;http://t.co/sZEgqW9n&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0" target="_blank"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails" target="_blank"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails" target="_blank"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/SpringSourceJob" target="_blank"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/search?q=springsource" target="_blank"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.arbetsformedlingen.se/4.1799db4911df80d2fa9800024.html?id=2029376#.TuW4pDDRrqE.email" target="_blank"&gt;Systemutvecklare Grails, BP Bolagspartner AB, Lund&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Grails-Boston/boards/view/viewthread?thread=18624202" target="_blank"&gt;Agile Developer &amp;ndash; Java/Groovy at Cyrus Innovation in Boston/NYC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/cupto/status/146669466611224576" target="_blank"&gt;@cupto&lt;/a&gt;: ?Programas o programaste en Java? ?Conoces grails? ?Sabes qu&amp;eacute; es spring security core? Tengo trabajo para ti, informes aqu&amp;iacute;.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/jimblizard/status/147041564080877569" target="_blank"&gt;@jimblizard&lt;/a&gt;: I&amp;rsquo;m looking for a Java web developer. &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; or &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; experience is a huge plus. Local to metro Atlanta.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/377" target="_blank"&gt;Agile Java/J2EE Programmer Analyst with Grails (contract) in Dallas, TX&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/pmenglund/status/147122505138708482" target="_blank"&gt;@pmenglund&lt;/a&gt;: Wanna work with Cloud Foundry? We&amp;rsquo;re looking for a site reliability engineer for &lt;a target="_blank" href="https://search.twitter.com/search?q=%23cfoundry"&gt;#cfoundry&lt;/a&gt; &lt;a target="_blank" href="http://t.co/w50MjM5a"&gt;http://t.co/w50MjM5a&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/rforrestjr/status/147301846602620928" target="_blank"&gt;@rforrestjr&lt;/a&gt;: Looking for Grails and java talented interns&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/brandyjfordcpc/status/147353224687517697" target="_blank"&gt;@brandyjfordcpc&lt;/a&gt;: Job opening for Cloud Software Developer J2EE Groovy/Grails UI paid relocation $$ up to 115K world-class company email &lt;a href="mailto:brandyjford@gmail.com"&gt;brandyjford@gmail.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/379" target="_blank"&gt;Grails Dev and More &amp;ndash; Minneapolis, MN&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/380" target="_blank"&gt;Web Application Developer at Refactr in Minneapolis, MN&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.ukstaffsearch.com/jobs/details/720172/" target="_blank"&gt;Back End Java Developer (Groovy/Grails) in Hounslow (London)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://careers.stackoverflow.com/jobs/13095/sr-consultant-java-grails-ios-permanent-full-object-partners" target="_blank"&gt;Sr. Consultant (Java/Grails/iOS) at Object Partners, Inc. in Minneapolis, MN&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.tecnoempleo.com/oferta-empleo-madrid/groovy-on-grails-alfresco-str/rf-ecd0r95dbkad9uf084mb" target="_blank"&gt;Programador Java con Grails &amp;ndash; Madrid&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.itmozg.ru/display_job/50399" target="_blank"&gt;Старший web разработчик (Grails &amp;amp; Java) &amp;ndash; Москва&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jobsinfortcollins.com/jobs.asp?pagemode=15&amp;amp;jid=2363066" target="_blank"&gt;Sr. Developer (Grails) in Loveland, CO&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/We-are-looking-Java-Developers-39757.S.85345195?qid=5b6fef56-c431-4059-bcbf-a7055b76dd8f" target="_blank"&gt;We are looking for Java Developers for my Client in San Antonio, TX&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Grails-Developer-Long-term-contract-39757.S.84630412?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=84630412" target="_blank"&gt;Grails Developer Long term contract in Atlanta&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Full-time-Grails-developer-needed-39757.S.84765774?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=84765774" target="_blank"&gt;Full time Grails developer needed in Orange County, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Looking-4-Fulltime-Grails-Developer-39757.S.84785634?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=84785634" target="_blank"&gt;Looking for 4 Fulltime Grails Developer and 2 contract Grails Developers to start working on next gen product&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&amp;amp;discussionID=85496311&amp;amp;gid=76751" target="_blank"&gt;Software Developer in Duluth, GA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Grails-developer-14-above-required-39757.S.85415589?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=85415589" target="_blank"&gt;Grails developer (contract) in London&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/java-161/events/44263862/" target="_blank"&gt;Monday, December 26, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Seattle-Groovy/events/32345342/" target="_blank"&gt;Thursday, January 12, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/java-161/events/44263902/" target="_blank"&gt;Monday, January 23, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-50%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/ZGLdB6BpxkFGhqb6dAFl7wg2zak/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZGLdB6BpxkFGhqb6dAFl7wg2zak/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/ZGLdB6BpxkFGhqb6dAFl7wg2zak/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/ZGLdB6BpxkFGhqb6dAFl7wg2zak/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=jPP-d24Ln-M:LdDVM7GWyrY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=jPP-d24Ln-M:LdDVM7GWyrY:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=jPP-d24Ln-M:LdDVM7GWyrY:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/jPP-d24Ln-M" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-50%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/13">Griffon</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/10">IDE</category>
 <category domain="http://www.groovyq.net/taxonomy/term/21">nosql</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/spock">Spock</category>
 <category domain="http://www.groovyq.net/taxonomy/term/8">书籍</category>
 <category domain="http://www.groovyq.net/taxonomy/term/22">前端开发</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/11">权限</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 19 Dec 2011 06:34:49 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">554 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-50%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-49）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/knlhe_rcSvs/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-49%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a title=" This Week in Grails (2011-49)" href="http://burtbeckwith.com/blog/?p=1095" rel="bookmark"&gt;This Week in Grails (2011-49)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;本周最大的事件就是在伦敦&lt;a target="_blank" href="http://skillsmatter.com/"&gt;Skills Matter&lt;/a&gt;上召开的第5届&lt;a target="_blank" href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;大会。有两个track和超过20个演讲，还有很多事情，以及一些并行的track也让人们多了些选择。但是幸运的是，Skills Matter录制演讲很是不错，把成品拿出来的速度创了记录。&amp;ndash; 在随后的会议内公布了大多数演讲，点击大会日程表上的演讲摘要，就能获得视频。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;明年的会议&lt;a target="_blank" href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2012"&gt;已经公布了&lt;/a&gt;；将会在12月12日～13日召开。前50张票只需95磅，你还等什么？&lt;/p&gt;
&lt;p&gt;我的演讲是关于Spring Security插件的中/高级用法 &amp;ndash; 可以看&lt;a target="_blank" href="http://skillsmatter.com/podcast/groovy-grails/hacking-the-spring-security-plugin"&gt;这里&lt;/a&gt;，以及在相关的&lt;a target="_blank" href="/blog/?p=1090"&gt;博文&lt;/a&gt;中查看幻灯和示例应用。&lt;/p&gt;
&lt;p&gt;像其他大会一样，这次会议也有很多的嘀咕，如下是我觉得有趣的：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/russel_winder/status/144773375078842368"&gt;@russel_winder&lt;/a&gt;：&lt;a href="https://twitter.com/#!/pledbrook" target="_blank"&gt;@pledbrook&lt;/a&gt; Barbican GGeX 2007的花园午餐会议上拉开了&lt;a href="https://search.twitter.com/search?q=%23Gradle" target="_blank"&gt;#Gradle&lt;/a&gt;的序幕。这不是在做梦 &lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23ggx" target="_blank"&gt;#ggx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/rfletcherEW/status/144794926020964352"&gt;@rfletcherEW&lt;/a&gt;：企业软件&amp;ldquo;有许多要处理的病灶&amp;rdquo;&lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;上的&lt;a href="https://twitter.com/#!/hans_d" target="_blank"&gt;@hans_d&lt;/a&gt;  &lt;a href="https://search.twitter.com/search?q=%23ggx" target="_blank"&gt;#ggx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/dsommerville_nw/status/144815153790205952"&gt;@dsommerville_nw&lt;/a&gt;：震惊于未写在&lt;a href="https://search.twitter.com/search?q=%23spock" target="_blank"&gt;#spock&lt;/a&gt;文档里的 &amp;lsquo;optimizeRunOrder&amp;rsquo; 它运行测试的方式很像*fail first*，最小化了反馈环！&lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/antony/status/145075714473988096"&gt;@antony&lt;/a&gt;：当我们达到1千个插件时，我们要用怎样的盛会来庆祝？ &lt;a href="http://t.co/uBxBP4r5" target="_blank"&gt;http://t.co/uBxBP4r5&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/epragt/status/145080203419467776"&gt;@epragt&lt;/a&gt;：&lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt; 别使用&lt;a href="https://search.twitter.com/search?q=%23hibernate" target="_blank"&gt;#hibernate&lt;/a&gt; update &amp;mdash;：提示：实际上，应该用 &amp;lsquo;validate&amp;rsquo;代替！&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/epragt/status/145086693119246336"&gt;@epragt&lt;/a&gt;：&lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23wtf" target="_blank"&gt;#wtf&lt;/a&gt; = web、twitter和forum&lt;a href="https://twitter.com/#!/pledbrook" target="_blank"&gt;@pledbrook&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/russel_winder/status/145091247000924160"&gt;@russel_winder&lt;/a&gt;：昨天&lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;上，关于我那个环节的一些想法 &lt;a href="http://t.co/ho8CxbGe" target="_blank"&gt;http://t.co/ho8CxbGe&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23ggx" target="_blank"&gt;#ggx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/epragt/status/145117427557081088"&gt;@epragt&lt;/a&gt;：如果你需要强迫开发人员写测试，那么你的团队中可能有不合格的开发人员&amp;hellip; &lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/wmacgyver/status/144719295719546880"&gt;@wmacgyver&lt;/a&gt;：不知道&lt;a href="https://search.twitter.com/search?q=%23groovy" target="_blank"&gt;#groovy&lt;/a&gt; 1.8中还有&lt;a href="https://twitter.com/#!/Field" target="_blank"&gt;@Field&lt;/a&gt;可用 &lt;a href="http://t.co/xh6TCH47" target="_blank"&gt;http://t.co/xh6TCH47&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/dsommerville_nw/status/144760388033060865"&gt;@dsommerville_nw&lt;/a&gt;：真的很喜欢&lt;a href="https://search.twitter.com/search?q=%23ratpack" target="_blank"&gt;#ratpack&lt;/a&gt;简化了轻量级RESTful Web应用的开发，它用到了&lt;a href="https://search.twitter.com/search?q=%23groovy" target="_blank"&gt;#groovy&lt;/a&gt;和模板机制&lt;a href="http://t.co/2MqoVxBG" target="_blank"&gt;http://t.co/2MqoVxBG&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/darthvader42/status/144775932899622912"&gt;@darthvader42&lt;/a&gt;：不知道还有&lt;a href="https://search.twitter.com/search?q=%23gradle" target="_blank"&gt;#gradle&lt;/a&gt; dsl参考指南 &lt;a href="http://t.co/DobzpXcY" target="_blank"&gt;http://t.co/DobzpXcY&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/epragt/status/145131511505620992"&gt;@epragt&lt;/a&gt;：Graeme Rocher真的在意这个社区，在摄像头前面对观众时，甚至都会整理着装。敬佩！&lt;img src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_wink.gif" alt=";-)" class="wp-smiley" /&gt;  &lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/dsommerville_nw/status/145149701124145152"&gt;@dsommerville_nw&lt;/a&gt;：Betamax：ruby VCR的&lt;a href="https://search.twitter.com/search?q=%23groovy" target="_blank"&gt;#groovy&lt;/a&gt;移植版；真实的HTTP连接被捕获，并在测试时作为打包响应回放 &lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/paulfairless/status/145157951819227136"&gt;@paulfairless&lt;/a&gt;：再次提醒了我，为什么没用fixture和build-test-data插件 &lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/rfletcherEW/status/145262857087492098"&gt;@rfletcherEW&lt;/a&gt;：&lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;之后，&lt;a href="https://twitter.com/#!/smaldini" target="_blank"&gt;@smaldini&lt;/a&gt;发现了伦敦的最佳座位 &lt;a href="http://t.co/OqS2dYkq" target="_blank"&gt;http://t.co/OqS2dYkq&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/epragt/status/145269019459600386"&gt;@epragt&lt;/a&gt;：对不起，&lt;a href="https://search.twitter.com/search?q=%23grails" target="_blank"&gt;#grails&lt;/a&gt;的伙计搞乱了演示，但是Groovy Android Console又正常工作了！&lt;a href="http://t.co/SMxtKKKP" target="_blank"&gt;http://t.co/SMxtKKKP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/marcinerdmann/status/145281786283438080"&gt;@marcinerdmann&lt;/a&gt;：&lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;如此盛大的&lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;会议之后，终于回家了. 谢谢你们每个人，&lt;a href="https://search.twitter.com/search?q=%23groovy" target="_blank"&gt;#groovy&lt;/a&gt;的技术和人都很不错。明年再见！&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/ldaley/status/145312591978315778"&gt;@ldaley&lt;/a&gt;：2011年的Groovy &amp;amp; Grails Exchange大会后，彻底筋疲力尽了。有这么多不错的讨论和人。&lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tomaslin/status/145446869835845633"&gt;@tomaslin&lt;/a&gt;：&lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;上得到的Cloud FoundryT恤背面写着&amp;lsquo;You bet your PAAS it&amp;rsquo;s open&amp;rsquo;。 不确定我是否会穿着它参加客户会议。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;补充一句，这个系列已经1年了 &amp;ndash; 我知道这不值得一提，但我仍难以想象它已经一岁了。&lt;/p&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a href="http://burtbeckwith.com/blog/?cat=32" target="_blank"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a href="http://feeds.feedburner.com/this-week-in-grails" target="_blank"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.vitoria-gasteiz.org/" target="_blank"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.groovyq.net/" target="_blank"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://t.co/" target="_blank"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.nabiladouani.fr/" target="_blank"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blog.springsource.org/2011/12/05/countdown-to-grails-2-0-persistence/"&gt;Grails 2.0倒计时：持久化&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://fbflex.wordpress.com/2011/12/10/suggestions-to-keeping-grails-one-step-ahead-a-wishlist/"&gt;保持Grails领先的建议：我的心愿表&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.intelligrape.com/blog/2011/12/06/integrating-google-plus-in-grails-application/"&gt;将Google plus整合到Grails应用中&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://aftershox.com/2011/12/06/installing-weceem-cms/"&gt;安装weceem cms&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.tomcatexpert.com/blog/2011/12/07/apache-tomcat-6035-released"&gt;Apache Tomcat 6.0.35发布了&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.kellyrob99.com/blog/2011/12/04/five-cool-things-you-can-do-with-groovy-scripts/"&gt;可以用Groovy脚本做的五件酷事&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.springsource.org/node/3327"&gt;Spring Security 3.1.0发布了&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://mbdgam.blogspot.com/2011/12/grails-noms-de-tables-lisibles-grace.html?spref=tw#!/2011/12/grails-noms-de-tables-lisibles-grace.html"&gt;Grails: Noms de tables lisibles grace aux packages&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.canoo.com/blog/2011/12/08/the-art-of-groovy-command-expressions-in-dsls/"&gt;DSL中Groovy Command Expression的艺术&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-12-05"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-05&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-12-06"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-06&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-12-07"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-07&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-12-08"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-08&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-12-09"&gt;http://observatoriodegrails.com/hoy/?date=2011-12-09&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.springsource.org/node/3326"&gt;Spring每周观察，2011年12月6日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周新发布了1个插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/marshallers"&gt;marshallers&lt;/a&gt; 0.1. 轻松注册和使用支持分层配置的自定义XML和JSON marshaller。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有9个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/cloud-bees"&gt;cloud-bees&lt;/a&gt; 0.5. 为集成CloudBees客户端API，添加了脚本；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/dojo"&gt;dojo&lt;/a&gt; 1.6.1.3. 添加Dojo javascript 工具；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/jquery"&gt;jquery&lt;/a&gt; 1.7.1. 集成了jQuery；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/proxool"&gt;proxool&lt;/a&gt; 0.9.1.5. Proxool jdbc连接池插件；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/redis"&gt;redis&lt;/a&gt; 1.1. 提供了Redis存储；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/resources"&gt;resources&lt;/a&gt; 1.1.4. 资源管理和处理框架；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/viaboxx-dbmigrate"&gt;viaboxx-dbmigrate&lt;/a&gt; 1.3.1. 为你的项目建立和迁移数据库；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/webxml"&gt;webxml&lt;/a&gt; 1.4.1. 为你的web.xml添加特性，如Filter、配置Listener或者上下文参数定义；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/weceem"&gt;weceem&lt;/a&gt; 1.1.2. 内容管理系统。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/aalmiray/status/143084454364192769"&gt;@aalmiray&lt;/a&gt;：在离开去参加下周的&lt;a href="https://search.twitter.com/search?q=%23ggx" target="_blank"&gt;#ggx&lt;/a&gt;前，为&lt;a href="https://search.twitter.com/search?q=%23griffoninaction" target="_blank"&gt;#griffoninaction&lt;/a&gt;的最后一章（产品化工具）挑灯夜战。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/nagai_masato/status/143332267731857408"&gt;@nagai_masato&lt;/a&gt;：酷，&lt;a href="https://search.twitter.com/search?q=%23groovy" target="_blank"&gt;#groovy&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23eclipse" target="_blank"&gt;#eclipse&lt;/a&gt;插件已支持可添加未实现方法的quick-fix。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/sjpwarren/status/143446355375964160"&gt;@sjpwarren&lt;/a&gt;：在吉朗，墨尔本周围地区有&lt;a href="https://search.twitter.com/search?q=%23grails" target="_blank"&gt;#grails&lt;/a&gt;开发人员么？&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/alaverdyan/status/143663387614781441"&gt;@alaverdyan&lt;/a&gt;：祝贺南非&lt;a href="https://search.twitter.com/search?q=%23be2" target="_blank"&gt;#be2&lt;/a&gt;开发团队的新&amp;ldquo;宝宝&amp;rdquo;（从头开始构建的）诞生！&lt;a href="http://t.co/f9bHe6tx" target="_blank"&gt;http://t.co/f9bHe6tx&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23mongodb" target="_blank"&gt;#mongodb&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23grails" target="_blank"&gt;#grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tomaslin/status/143667669592322049"&gt;@tomaslin&lt;/a&gt;：伦敦的Grails开发人员，不要用&lt;a href="http://t.co/zDzyLHko" target="_blank"&gt;http://t.co/zDzyLHko&lt;/a&gt;，他们给公司发垃圾邮件和诱饵，拿你们来当替罪羊。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/leosbiglife/status/143762409646071808"&gt;@leosbiglife&lt;/a&gt;：Web UI Goodness with Grails CoffeeScript、Backbone和HAML的Web UI技巧！感兴趣吗？我刚在github上上传了一个how-to示例 &amp;ndash; &lt;a href="http://t.co/d8ZH86Kh" target="_blank"&gt;http://t.co/d8ZH86Kh&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/glaforge/status/143995548427501568"&gt;@glaforge&lt;/a&gt;：巴黎一家社交网络创业公司正在找&lt;a href="https://search.twitter.com/search?q=%23groovy" target="_blank"&gt;#groovy&lt;/a&gt;/&lt;a href="https://search.twitter.com/search?q=%23grails" target="_blank"&gt;#grails&lt;/a&gt;开发人员。有人感兴趣么？&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/CedricChampeau/status/144447318949773312"&gt;@CedricChampeau&lt;/a&gt;：首次尝试静态检查GSP。哦，上帝，还有这么多工作要做！ &lt;a href="https://search.twitter.com/search?q=%23groovy" target="_blank"&gt;#groovy&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23grails" target="_blank"&gt;#grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/j_brisbin/status/144464579362168833"&gt;@j_brisbin&lt;/a&gt;：用Apache测量了&lt;a href="https://search.twitter.com/search?q=%23Java" target="_blank"&gt;#Java&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23Groovy" target="_blank"&gt;#Groovy&lt;/a&gt; reactor fwk 与 &lt;a href="https://search.twitter.com/search?q=%23nodejs" target="_blank"&gt;#nodejs&lt;/a&gt; streaming 1mb大小的文件 x 100个并发用户）。我用了：128ms，node用了：267ms &lt;a href="https://search.twitter.com/search?q=%23JVM" target="_blank"&gt;#JVM&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23FTW" target="_blank"&gt;#FTW&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/simonthetwit/status/144819949574160386"&gt;@simonthetwit&lt;/a&gt;：hellohouse.com是我在南非参与的一个新的&lt;a href="https://search.twitter.com/search?q=%23grails" target="_blank"&gt;#grails&lt;/a&gt;项目。虽然还是beta版本，但上线已经没问题了。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/rfletcherEW/status/145083401668542464"&gt;@rfletcherEW&lt;/a&gt;：任何对&lt;a href="https://search.twitter.com/search?q=%23grails" target="_blank"&gt;#grails&lt;/a&gt; 1.3 -&amp;gt; 2 迁移感兴趣的伙计，我已经将此过程写成博文了：&lt;a href="http://t.co/OPsR4fSi" target="_blank"&gt;http://t.co/OPsR4fSi&lt;/a&gt; 即将发布第二部分。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tednaleid/status/145713474364903424"&gt;@tednaleid&lt;/a&gt;：刚发布了grails-redis 1.1，新的new memoizeSet、memoizeList、 memoizeDomainObject，&amp;amp; 更多的锁连接  &lt;a href="http://t.co/KjWFPHrH" target="_blank"&gt;http://t.co/KjWFPHrH&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/SpringSourceJob"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobs.vmware.com/search?q=springsource"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/371"&gt;Groovy/ Grails Developer &amp;ndash; London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/twcrone/status/145079300645859328"&gt;@twcrone&lt;/a&gt;: My company, Lexmark International, if officially adopting &lt;a href="https://search.twitter.com/search?q=%23groovy" target="_blank"&gt;#groovy&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23grails" target="_blank"&gt;#grails&lt;/a&gt; for its cloud services.  Come join us! -&amp;gt; &lt;a href="http://t.co/MSbZqxrG" target="_blank"&gt;http://t.co/MSbZqxrG&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/gsaqui/status/145074391389179904"&gt;@gsaqui&lt;/a&gt;: Anyone who is at &lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt; and is looking for work &amp;ndash; sky is hiring 10 grails developers for 2 green field projects &amp;ndash; come chat to me&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/thoughtworks1/status/144760230075580416"&gt;@thoughtworks1&lt;/a&gt;: For open roles and further information please visit &lt;a href="http://t.co/tCEK9W7u" target="_blank"&gt;http://t.co/tCEK9W7u&lt;/a&gt; or speak to us at SkillsMatter &lt;a href="https://search.twitter.com/search?q=%23grailsx" target="_blank"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/ryanwilkins88/status/145154023329247232"&gt;@ryanwilkins88&lt;/a&gt;: I am looking for a &lt;a href="https://search.twitter.com/search?q=%23Java" target="_blank"&gt;#Java&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23Developer" target="_blank"&gt;#Developer&lt;/a&gt; with &lt;a href="https://search.twitter.com/search?q=%23Groovy" target="_blank"&gt;#Groovy&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23Grails" target="_blank"&gt;#Grails&lt;/a&gt; experience for an exciting greenfield project in London. Know anyone?&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.netflix.com/Jobs?id=7563&amp;amp;jvi=ohZ4VfwZ"&gt;Senior Software Engineer &amp;ndash; Cloud Applications and Tools at Netflix&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/376"&gt;Lead Grails/MVC Developer &amp;ndash; Contract or Perm &amp;ndash; Bay Area, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/375"&gt;Web Application Developer (contract) in Lexington, KY&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/occurred/status/145617669691932672"&gt;@occurred&lt;/a&gt;: Job in Linz/AT: Java/Groovy/Grails-Junior-Developer &amp;ndash; DM me for more information. &lt;a href="https://search.twitter.com/search?q=%23groovy" target="_blank"&gt;#groovy&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23grails" target="_blank"&gt;#grails&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23java" target="_blank"&gt;#java&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23job" target="_blank"&gt;#job&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23jobs" target="_blank"&gt;#jobs&lt;/a&gt; &lt;a href="https://search.twitter.com/search?q=%23linz" target="_blank"&gt;#linz&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/cfrerebeau/status/145283703973740546"&gt;@cfrerebeau&lt;/a&gt;: Fundspire is hiring developers. Interested to join a fast growing Startup: Require Java, Groovy, Grails or Javascript&lt;br /&gt;
    &lt;a href="http://t.co/eoDJiXl6" target="_blank"&gt;http://t.co/eoDJiXl6&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/alicedice/status/145169022474915840"&gt;@alicedice&lt;/a&gt;: Tengo dos vacantes full time. Uno para Java con Grails y otro Php con synfony. Informes y cvs a rh en vincoorbis.com. RT svp.&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.aplitrak.com/?adid=Y2lhcmFuLm9yZWdhbi45Mjc0Mi50d2lAaHVudHJlc3MuYXBsaXRyYWsuY29t"&gt;Web Developer, Grails / ColdFusion, London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.box.com/s/rih92ujl0q363dg8prf0"&gt;Senior Software Engineer (Java/Grails) in Bethesda, MD&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/372"&gt;Very Very Senior Grails Developer at Whats In My Handbag in London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/david9472/status/144825848741109760"&gt;@david9472&lt;/a&gt;: Need a Sr. level Java developer. Would be great to have Grails/groovy experience. Need ASAP.&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.theitjobboard.co.uk/IT-Job/Senior-Java-Developer-Groovy-Grails-Crewe-40K/8392943/en/"&gt;Senior Java Developer, Groovy/Grails in the UK, Crewe &amp;amp; Nantwich&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://aseriesoftubes.com/careers/java-groovy-grails-developer-x-2/"&gt;Two Java Groovy Grails Developers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/wangjammer5/status/144089353851899905"&gt;@wangjammer5&lt;/a&gt;: Interested in &lt;a href="https://search.twitter.com/search?q=%23Grails" target="_blank"&gt;#Grails&lt;/a&gt; doing dev work in 2012 for an International Technical Publisher in NJ/NYC? Contact me for details. &lt;a href="https://search.twitter.com/search?q=%23jobs" target="_blank"&gt;#jobs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.aplitrak.com/?adid=c2FtbWlhYmRvaC44NjUzOS50d2lAZWxhbml0LmFwbGl0cmFrLmNvbQ"&gt;Back End Java Developer (Groovy/Grails) in Hounslow, West London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://jobboerse.arbeitsagentur.de/vamJB/stellenangeboteFinden.html?benc=NWakzmjAzaHSURotIRpoVPGOOVSDyXi3ZHY%2FsUMDtYYfcI9NWkhQsg%3D%3D"&gt;Spannendes Praktikum Java/Grails Bereich, Berlin&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://mobiquityinc.com/careers/senior-grails-developer-contract"&gt;Senior Grails Developer (Contract) at Mobiquity&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobs.ipfhr.com/job/java-grailsgroovy-restful-web-services/650542"&gt;Senior Software Engineer &amp;ndash; Java, Grails/Groovy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Grails-Developer-39757.S.83595072"&gt;Grails Developer (contract) in London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Work-from-home-2-days-39757.S.83597243"&gt;Work from home 2 days a week on an open ended Contractor in Dallas, TX&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Work-from-home-2-days-39757.S.83597243"&gt;4 Fulltime Grails Developer and 2 contract Grails Developers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Urgent-Opening-Bangalore-India-Groovy-39757.S.83519545"&gt;Urgent Opening at Bangalore, India for Groovy/Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Hi-guys-Im-looking-Grails-39757.S.83154575"&gt;Grails/Java developer in Auckland&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Java-DeveloperAre-you-groovy-Atlanta-39757.S.83792726"&gt;Java Developer-Are you groovy? (Atlanta)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/San-Francisco-Grails-Cafe-Centro/events/36598852/"&gt;Holiday &amp;lsquo;Pub Night&amp;rsquo; Meetup &amp;ndash; December 14, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;San Francisco Grails Cafe Centro&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Seattle-Groovy/events/32345342/"&gt;Thursday, January 12, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-49%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/34xL7a2EmYK2I25BtTmXg2_S4nU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/34xL7a2EmYK2I25BtTmXg2_S4nU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/34xL7a2EmYK2I25BtTmXg2_S4nU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/34xL7a2EmYK2I25BtTmXg2_S4nU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=knlhe_rcSvs:LLniwJod0Fc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=knlhe_rcSvs:LLniwJod0Fc:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=knlhe_rcSvs:LLniwJod0Fc:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/knlhe_rcSvs" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-49%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/23">Groovy++</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/spock">Spock</category>
 <category domain="http://www.groovyq.net/taxonomy/term/22">前端开发</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/11">权限</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 12 Dec 2011 13:29:13 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">553 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-49%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-48）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/NGlV-bc9zqY/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-48%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a title=" This Week in Grails (2011-48)" href="http://burtbeckwith.com/blog/?p=1082" rel="bookmark"&gt;This Week in Grails (2011-48)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;鉴于2.0 RC2存在一些问题，我们&lt;a href="http://grails.1312388.n4.nabble.com/ANN-Grails-2-0-RC3-now-available-td4147796.html" target="_blank"&gt;在周五发布了RC3&lt;/a&gt;。请测试这个版本 &amp;ndash; 不少问题已经修复，我们希望确保2.0最终版尽量稳定。&lt;/p&gt;
&lt;p&gt;Marc Palmer和我本周有些趣闻公布，我们都重新发布了&lt;a href="http://grails.org/plugin/resources" target="_blank"&gt;resources&lt;/a&gt;和&lt;a href="http://grails.org/plugin/spring-security-core" target="_blank"&gt;spring-security-core&lt;/a&gt;插件。两个插件都为web.xml添加了filter，它们都需要在特定的位置，如果两个插件都安装了，它们会相互干扰。所以我对&lt;a href="http://grails.org/plugin/webxml" target="_blank"&gt;webxml&lt;/a&gt;添加了一个特性，就是控制过filter-mapping的重排序。尽管还是会有些问题，但是在最新版本中它们会合作的很好。&lt;/p&gt;
&lt;p&gt;如果你还没有拿到&lt;a href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011" target="_blank"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;大会的门票，时间不多了 &amp;ndash; 仅剩几天了！我会有一个新的演讲，&lt;a href="http://skillsmatter.com/podcast/groovy-grails/hacking-the-spring-security-plugin" target="_blank"&gt;&amp;ldquo;掌控Spring Security插件&amp;rdquo;&lt;/a&gt;，将会详述这个插件的工作原理以及自定义它的行为和调试问题的方法。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a href="http://burtbeckwith.com/blog/?cat=32" target="_blank"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a href="http://feeds.feedburner.com/this-week-in-grails" target="_blank"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.vitoria-gasteiz.org/" target="_blank"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.groovyq.net/" target="_blank"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://t.co/" target="_blank"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.nabiladouani.fr/" target="_blank"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://mrhaki.blogspot.com/2011/11/grails-goodness-get-grailsapplication.html"&gt;Grails技巧：在GSP中获得GrailsApplication和ApplicationContext&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://adhockery.github.com/blog/2011/11/29/grails-2-upgrade-part-1/"&gt;Grails 2升级路：第一部分&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://naleid.com/blog/2011/11/29/speed-up-your-grails-spring-security-development-with-autologin-bookmarklet/"&gt;用自动登录的Bookmarklet加速Grails/Spring Security开发&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://fbflex.wordpress.com/2011/11/30/replacing-the-groovy-execute-method-with-one-that-prints-output-while-the-process-is-running/"&gt;用进程边运行边输出的方法（method）取代Groovy的execute()方法&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.intelligrape.com/blog/2011/11/30/grails-productivity-enhancer-the-unsung-hero-grails-interactive-mode/"&gt;Grails生产力增强器，无名英雄&amp;lsquo;grails interactive mode&amp;rsquo;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://difdevtricks.blogspot.com/2011/11/cas-grails.html"&gt;在使用CAS认证的Grails应用中使用Transformation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://fbflex.wordpress.com/2011/12/01/a-script-to-run-grails-functional-tests-in-parallel"&gt;并行运行Grails功能测试的脚本&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://ceswp.ca/ceswptech/?p=77"&gt;Grails中使用嵌套（内嵌）SiteMesh的布局&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.intelligrape.com/blog/2011/11/30/load-testing-made-easy-with-a-simple-jmeter-utility/"&gt;用简单的JMeter工具简化负载测试&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://sysgears.com/articles/spring-security-grails-plugin-quick-start-and-some-tips"&gt;Spring Security Grails插件快速入门和部分技巧&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-11-28"&gt;http://observato riodegrails.com/hoy/?date=2011-11-28&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-11-29"&gt;http://observato riodegrails.com/hoy/?date=2011-11-29&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-11-30"&gt;http://observato riodegrails.com/hoy/?date=2011-11-30&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-12-01"&gt;http://observato riodegrails.com/hoy/?date=2011-12-01&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-12-02"&gt;http://observato riodegrails.com/hoy/?date=2011-12-02&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.springsource.org/node/3319"&gt;Spring每周观察，2011年11月29日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周没有新发布的插件，但是有18个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/activiti"&gt;activiti&lt;/a&gt; 5.8. 集成Activiti BPM套件和工作流系统；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/browser-detection"&gt;browser-detection&lt;/a&gt; 0.3.1. 为浏览器的检测提供服务和标签库；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/console-enhancements"&gt;console-enhancements&lt;/a&gt; 0.5. 增强Grails控制台输出， 提供更好的视觉效果；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/cxf-client"&gt;cxf-client&lt;/a&gt; 1.2.3. 使用现 有（或新的）Apache CXF wsdl2java生成的内容调用SOAP服务；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/gemfire"&gt;gemfire&lt;/a&gt; 1.0.0.M5. 集成了GemFire（分布式的内存数据管理平台）；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/grails-melody"&gt;grails-melody&lt;/a&gt; 1.10. 集成了JavaMelody系统监视工具；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/gwt"&gt;gwt&lt;/a&gt; 0.6.1. 将GWT集成到Grails中；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/mongodb"&gt;mongodb&lt;/a&gt; 1.0.0.RC2. 旨在在MongoDB之上提供一个对象映射层；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/mongodb-morphia"&gt;mongodb-morphia&lt;/a&gt; 0.7.6. 基于Morphia库的另一个MongoDB GORM（还有一个是gorm-mongodb）；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/remote-pagination"&gt;remote-pagination&lt;/a&gt; 0.2.7. 提供了分页标签，使用Ajax无需刷新页面即可完成列排序，并且仅装入所需对象列表；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/resources"&gt;resources&lt;/a&gt; 1.1.3. 资源管理和处理的框架；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/rich-domain"&gt;rich-domain&lt;/a&gt; 1.0.5. 为非Grails domain class的POGO提供了依赖注入；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/routing"&gt;routing&lt;/a&gt; 1.1.2. 利用Camel直接从你的Controller和Service中发送和路由消息到大范围的目的地端点；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-core"&gt;spring-security-core&lt;/a&gt; 1.2.6. 官方Grails安全插件：集成了Spring Security；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-facebook"&gt;spring-security-facebook&lt;/a&gt; 0.4.  Facebook认证插件，作为Grails Spring Security核心插件的扩展；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-saml"&gt;spring-security-saml&lt;/a&gt; 1.0.0.M9. 给Spring Security插件提供了SAML 2.x支持；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/uploadr"&gt;uploadr&lt;/a&gt; 0.5.5. HTML5拖拽文件上传器；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/webxml"&gt;webxml&lt;/a&gt; 1.4. 为你的web.xml添加了额外的功能，比如Filter、配置Listener或者上下文参数定义。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/grailsframework/status/141084751489544192"&gt;@grailsframework&lt;/a&gt;：有Google帐户吗？在Google+上查找&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;：&lt;a target="_blank" href="http://t.co/vwrIuwMB"&gt;http://t.co/vwrIuwMB&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/jbolie/status/141431337218359298"&gt;@jbolie&lt;/a&gt;：用&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;做了3年项目后，再干&lt;a target="_blank" href="https://search.twitter.com/search?q=%23jee"&gt;#jee&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23JPA"&gt;#JPA&lt;/a&gt;项目，感觉有点脏。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tim_yates/status/141816808201129984"&gt;@tim_yates &lt;/a&gt;：我喜欢&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;中的stripMargin() &lt;a target="_blank" href="http://t.co/9pGcttSG"&gt;http://t.co/9pGcttSG&lt;/a&gt; 它让多行的String定义看起来很整洁&amp;hellip;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/glaforge/status/141896273727995905"&gt;@glaforge&lt;/a&gt;：我的关于&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; 1.8、2.0及后续版本的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23infoq"&gt;#infoq&lt;/a&gt;采访发布了&lt;a target="_blank" href="http://t.co/Z8LiC7Dj"&gt;http://t.co/Z8LiC7Dj&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/sapsiero/status/141994056954806272"&gt;@sapsiero&lt;/a&gt;：刚刚发布面向&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; 2.0的小的快速输入插件 &lt;a target="_blank" href="https://search.twitter.com/search?q=%23plugin"&gt;#plugin&lt;/a&gt;，请查看：&lt;a target="_blank" href="http://t.co/4Scz7a8y"&gt;http://t.co/4Scz7a8y&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/elmkretzer/status/142236395329683456"&gt;@elmkretzer&lt;/a&gt;：哦，&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;看上去太&lt;a target="_blank" href="https://search.twitter.com/search?q=%23scala"&gt;#scala&lt;/a&gt;了 [1,2,3].each { _ -&amp;gt; println _} &lt;a target="_blank" href="http://t.co/fdI530f1"&gt;http://t.co/fdI530f1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/mrhaki/status/142322064831946752"&gt;@mrhaki&lt;/a&gt;：在我们的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;项目中首次使用&lt;a target="_blank" href="https://search.twitter.com/search?q=%23twitterbootstrap"&gt;#twitterbootstrap&lt;/a&gt;，我喜欢它。短时间内来看，生产力相当不错，而且客户也喜欢那些界面。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/wangjammer5/status/142567158273159168"&gt;@wangjammer5&lt;/a&gt;：广而告之，各位，我打算把我关于Grails开发和插件的相关tweet移到&lt;a target="_blank" href="https://twitter.com/#!/grails_rocks"&gt;@grails_rocks&lt;/a&gt;，请follow它。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/LondonGGUG/status/142590266203848704"&gt;@LondonGG UG&lt;/a&gt;：Groovy &amp;amp; Grails Exchange 2011大会召开仅剩一周了！&lt;a target="_blank" href="http://t.co/bkp1YGTb"&gt;http://t.co/bkp1YGTb&lt;/a&gt; &amp;ndash; 希望能在那儿见到你！&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grailsx"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/gershwinou/status/142666254862385153"&gt;@gershwinou&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23docco"&gt;#docco&lt;/a&gt;的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;版本，漂亮文档渲染你的源文件 &lt;a target="_blank" href="http://t.co/QcF8D5dk"&gt;http://t.co/QcF8D5dk&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/SpringSourceJob"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobs.vmware.com/search?q=springsource"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.lakodoposla.com/index.php?mod=search&amp;amp;job=20118"&gt;JEE/Grails in?enjer, Beograd&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/368"&gt;Lead Developer at Acrede&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/charlie_fulton/status/141595885363675136"&gt;@charlie_fulton&lt;/a&gt;: we are hiring a Java dev w/ GWT exp must be in Atlanta. Chance to work with Gwt, Grails, possible iOS later. Small company, growing fast.&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.instantcommute.com/2011/11/29/grails-developer/"&gt;Grails Developer&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/markus_abrs/status/141969480094990336"&gt;@markus_ abrs&lt;/a&gt;: If you are a &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Java"&gt;#Java&lt;/a&gt; Developer with &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; and &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Restful"&gt;#Restful&lt;/a&gt; &amp;ndash; get in contact ASAP. Long Term contract with industry leading organisation in Lond&amp;hellip;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/gsuhm/status/141920105125785601"&gt;@gsuhm&lt;/a&gt;: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23WorthPoint"&gt;#WorthPoint&lt;/a&gt; is looking for QA engineers (automation especially), Grails Developers, UI Developers and great product people&amp;hellip;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/370"&gt;Developer &amp;ndash; Remote (contract)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/369"&gt;Java &amp;ndash; / Grails &amp;ndash; Entwickler/in &amp;ndash; Berlin, Germany&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=101&amp;amp;dockey=xml/6/5/65d039af7b5ba1d0cdf15112364ffeab@endecaindex&amp;amp;c=1&amp;amp;source=20&amp;amp;cmpid=AG:7"&gt;Java/Grails Developer in NYC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/BwellsRecruiter/status/141641550831697921"&gt;@Bwe llsRecruiter&lt;/a&gt;: I have multiple Bioinformatics Software Developer Positions open in the Boston Area! Must have Java and Groovy/Grails If interested pleas&amp;hellip;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.klipfolio.com/company/careers"&gt;Web Developer at Klipfolio in Ottawa&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.spanjobs.com/india/jobs/it-telecommunication-jobs/chandigarh-jobs/grails-groovy-software-engineer-at-edifecs-technologies-pvt-ltd/3604683"&gt;Grails/Groovy Software Engineer at Edifecs Technologies in Chandigarh&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://sfbay.craigslist.org/sfc/sof/2729786673.html"&gt;Grails UX/UI Guru for stealth startup in San Francisco&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.jobs3000.net/id-8244ebd5fe54bd8b/listing/java-entwickler-in-mit-grails-ambitionen.html"&gt;Java-Entwickler/in mit Grails-Ambitionen &amp;ndash; Berlin&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/ncerezo/status/142652468478742528"&gt;@ncerezo&lt;/a&gt; : Estoy buscando programador &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; , si te interesa: narciso en elondra punto com. &lt;a target="_blank" href="https://search.twitter.com/search?q=%23trabajo"&gt;#trabajo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/ExperisIT_Evan/status/142608199357444096"&gt;@Expe risIT_Evan&lt;/a&gt;: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Experis"&gt;#Experis&lt;/a&gt; has a great opportunity for a &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Developer"&gt;#Developer&lt;/a&gt; in &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Columbus"&gt;#Columbus&lt;/a&gt; Ohio email &lt;a href="mailto:evan.meaney@experis.com"&gt;evan.meaney@experis.com&lt;/a&gt; for details &lt;a target="_blank" href="https://search.twitter.com/search?q=%23ITJobs"&gt;#ITJobs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Hi-guys-Im-looking-Grails-39757.S.83154575?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=83154575"&gt;Looking for a Grails/Java developer in Auckland&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/jobs?viewJob=&amp;amp;jobId=2189478"&gt;Sr. Software Engineer, UI at Rearden Commerce in Foster City, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&amp;amp;discussionID=82635773&amp;amp;gid=76751"&gt;Urgent need for a Java/Groovy/Grails Developer for our client in NYC&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;December 8&lt;sup&gt;th&lt;/sup&gt; and 9&lt;sup&gt;th&lt;/sup&gt; in London&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Grails-Boston/events/34746092/"&gt;Groovy 1.8 / Grails 2.0 New Features &amp;ndash; December 7, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Boston Grails Users&amp;rsquo; Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Seattle-Groovy/events/32345342/"&gt;Thursday, January 12, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-48%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/DVh4syU-Xy0_3kfV-Tgm1azfnE8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DVh4syU-Xy0_3kfV-Tgm1azfnE8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/DVh4syU-Xy0_3kfV-Tgm1azfnE8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/DVh4syU-Xy0_3kfV-Tgm1azfnE8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=NGlV-bc9zqY:WYJWUp02a2k:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=NGlV-bc9zqY:WYJWUp02a2k:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=NGlV-bc9zqY:WYJWUp02a2k:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/NGlV-bc9zqY" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-48%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/spock">Spock</category>
 <category domain="http://www.groovyq.net/taxonomy/term/22">前端开发</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/11">权限</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Sat, 03 Dec 2011 09:07:52 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">551 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-48%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-47）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/SAuVQ037vbM/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-47%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a title=" This Week in Grails (2011-47)" href="http://burtbeckwith.com/blog/?p=1065" rel="bookmark"&gt;This Week in Grails (2011-47)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;Rob Fletcher写了一个很有趣的博文，谈到了他在&lt;a target="_blank" href="http://adhockery.blogspot.com/2011/11/fear-loathing-in-functional-testing.html"&gt;功能测试上遇到的挫折&lt;/a&gt;。虽然很长，但值得一读，特别是如果你曾做过功能测试的话。此外，Luke Daley的&lt;a target="_blank" href="http://ldaley.com/post/13251886270/in-response-to-robs-post-on-functional-testing"&gt;回复&lt;/a&gt;也可以看看。&lt;/p&gt;
&lt;p&gt;如果你不是Groovy-Dev邮件列表的订阅者，你可以应该看看关于&lt;a target="_blank" href="http://groovy.329449.n5.nabble.com/static-compilation-for-Groovy-td4982022.html"&gt;静态编译&lt;/a&gt;的讨论。有不少回复（超过50条），虽然很技术，但是也很吸引人。&lt;/p&gt;
&lt;p&gt;这是一个旧新闻（两周前），但对于我而言，仍旧是新的；基于Grails的myBalsamiq已经有&lt;a target="_blank" href="http://blogs.balsamiq.com/product/2011/11/10/mybalsamiq/"&gt;正式发布了&lt;/a&gt;。这是一款协作UI模拟的不错的工具。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a target="_blank" href="http://burtbeckwith.com/blog/?cat=32"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a target="_blank" href="http://feeds.feedburner.com/this-week-in-grails"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.vitoria-gasteiz.org/"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://t.co/"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.nabiladouani.fr/"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blog.alfonsorv.com/grails-ldap-authentication-and-authorization/" target="_blank"&gt;Grails LDAP认证和授权&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aaronbabcock.blogspot.com/2011/11/groovy-debugging.html#!/2011/11/groovy-debugging.html" target="_blank"&gt;Groovy调试&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mrhaki.blogspot.com/2011/11/groovy-goodness-magic-package-to-add.html" target="_blank"&gt;Groovy技巧：添加自定义MetaClass的魔术包名&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/blog/view/pledbrook/Grails+application+featured+on+Reuters" target="_blank"&gt;路透社上亮相的特色Grails应用&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.aaideas.com/2011/11/22/customized-grails-controller-for-rest/" target="_blank"&gt;定制REST Grails Controller&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://glaforge.appspot.com/article/handy-gradle-startup-script" target="_blank"&gt;简便的Gradle启动脚本&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mrhaki.blogspot.com/2011/11/grails-goodness-access-action-and.html" target="_blank"&gt;Grails技巧：在GSP中访问Actoin和Controller的名字&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://exensio.blogspot.com/2011/11/datenbank-migrationen-mit-grails.html" target="_blank"&gt;Datenbank-Migrationen mit Grails&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;在数据库间迁移数据，不限于单个DB哦&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.tomcatexpert.com/blog/2011/11/28/apache-tomcat-7023-release" target="_blank"&gt;Apache Tomcat 7.0.23发布&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://forums.gradle.org/gradle/topics/this_week_in_gradle_2011_47" target="_blank"&gt;Gradle每周观察（2011-47）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-21" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-21&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-22" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-22&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-23" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-23&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-24" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-24&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-25" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-25&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周没有发布新的插件，但是有17个更新插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/browser-detection" target="_blank"&gt;browser-detection&lt;/a&gt; 0.3. 为浏览器的检测提供服务和标签库；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/fixtures" target="_blank"&gt;fixtures&lt;/a&gt; 1.1. 通过方便的DSL装入测试数据；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/gemfire" target="_blank"&gt;gemfire&lt;/a&gt; 1.0.0.M4. 集成了GemFire（分布式的内存数据管理平台）；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/grails-ui" target="_blank"&gt;grails-ui&lt;/a&gt; 1.2.2. 为使用YUI的ajaxy组件提供了标准的UI；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/gwt" target="_blank"&gt;gwt&lt;/a&gt; 0.6. 将GWT集成到Grails中；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/hibernate-search" target="_blank"&gt;hibernate-search&lt;/a&gt; 0.2. 为Domcain class集成了Hibernate；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/jquery" target="_blank"&gt;jquery&lt;/a&gt; 1.7. 集成了jQuery；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/knockoutjs" target="_blank"&gt;knockoutjs&lt;/a&gt; 1.2.1.2. 为Knockoutjs（&lt;a target="_blank" href="http://knockoutjs.com/)"&gt;http://knockoutjs.com/&lt;/a&gt;）的使用提供了必要的Javascript文件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/notifications" target="_blank"&gt;notifications&lt;/a&gt; 0.2.6. 实现了发布-订阅模式，通过不同沟通渠道将消息推向订阅者；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/scala" target="_blank"&gt;scala&lt;/a&gt; 0.6.4. 运行编译保存在应用的/src/java和/src/scala目录下的Scala资源；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spreadshirt" target="_blank"&gt;spreadshirt&lt;/a&gt; 0.6. Spreadshirt API的包装器；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-saml" target="_blank"&gt;spring-security-saml&lt;/a&gt; 1.0.0.M7. 给Spring Security插件提供了SAML 2.x支持；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-social-core" target="_blank"&gt;spring-social-core&lt;/a&gt; 0.1.31. 允许你的应用去连接软件即服务（SaaS）的提供商，比如Facebook和Twitter；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-social-twitter" target="_blank"&gt;spring-social-twitter&lt;/a&gt; 0.1.31. 把你的应用跟twitter连接起来；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/svn" target="_blank"&gt;svn&lt;/a&gt; 1.0.0. 提供SVNKit依赖；SvnClient类使其能更好地与Subversion 协作，与Release插件集成；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/webxml" target="_blank"&gt;webxml&lt;/a&gt; 1.3. 为web.xml添加额外的特性，如Filter、配置侦听器或者上下文参数定义；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/zkui" target="_blank"&gt;zkui&lt;/a&gt; 0.5.M2. 无缝的将ZK集成到Grails的基础设施；使用Grails的基础设施，如GSP、controller，而不是使用作为ZKGrails插件的zk的zul。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/eddgrant/status/138199730290307072" target="_blank"&gt;@eddgrant&lt;/a&gt;：第一次在Github上fork出一个Grails插件，有一个不错的特性想法要贡献出来。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23LearningGit"&gt;#LearningGit&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Excited"&gt;#Excited&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23SocialCoding"&gt;#SocialCoding&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/ZeJulie/status/138608863879495681" target="_blank"&gt;@ZeJulie&lt;/a&gt;：hibernate-search新的Grails插件伴随文档刚刚发布了 -&amp;gt; &lt;a target="_blank" href="http://t.co/T6PMLXSG"&gt;http://t.co/T6PMLXSG&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23hibernateSearch"&gt;#hibernateSearch&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/srisris/status/138839119282438144" target="_blank"&gt;@srisris&lt;/a&gt;：我在Linkedin上创建了Grails Hyderabad用户组: &lt;a target="_blank" href="http://t.co/JZ3LwByT"&gt;http://t.co/JZ3LwByT&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/ColinHarrington/status/139244010618363904" target="_blank"&gt;@ColinHarrington&lt;/a&gt;：shouldFail就该失败&lt;a target="_blank" href="http://t.co/zAm8dWMm"&gt;http://t.co/zAm8dWMm&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/sebi2706/status/139325224427589632" target="_blank"&gt;@sebi2706&lt;/a&gt;：我在&lt;a target="_blank" href="https://twitter.com/#!/rivierdev"&gt;@rivierdev&lt;/a&gt;上关于&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;和移动应用演讲视频可以看了（法语）&lt;a target="_blank" href="http://t.co/tM1V4onj"&gt;http://t.co/tM1V4onj&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/CedricChampeau/status/139364550439993344" target="_blank"&gt;@CedricChampeau&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; 增强静态编译的提案已经公开。我们需要你的意见：它应该成为Groovy 2的一部分么？&lt;a target="_blank" href="http://t.co/Omei1sK5"&gt;http://t.co/Omei1sK5&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/devstonez/status/139460044151455744" target="_blank"&gt;@devstonez&lt;/a&gt;：使用Grails 2.0 &amp;amp; Spock &lt;a target="_blank" href="http://t.co/DFAIScs0"&gt;http://t.co/DFAIScs0&lt;/a&gt;（&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23spock"&gt;#spock&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23testing"&gt;#testing&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt;，&lt;a target="_blank" href="https://twitter.com/#!/ctoestreich"&gt;@ctoestreich&lt;/a&gt;写的）测试Domain的约束。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/aspinall/status/139536904503832577" target="_blank"&gt;@aspinall&lt;/a&gt;：我在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23OSDC"&gt;#OSDC&lt;/a&gt;上题为&amp;ldquo;我的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;，宝贝！&amp;rdquo;的幻灯片和视频出来了（&lt;a target="_blank" href="http://t.co/9FQcuCSN"&gt;http://t.co/9FQcuCSN&lt;/a&gt; and &lt;a target="_blank" href="http://t.co/bg4Xj2a2)"&gt;http://t.co/bg4Xj2a2&lt;/a&gt;）&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/marcinerdmann/status/139803791900946432" target="_blank"&gt;@marcinerdmann&lt;/a&gt;：刚把一个变更Push到&lt;a target="_blank" href="https://search.twitter.com/search?q=%23discobot"&gt;#discobot&lt;/a&gt;资源库（经过一个月的斗争），这样就可以在Android上动态加载生成的Groovy类 &lt;a target="_blank" href="https://search.twitter.com/search?q=%23ggx"&gt;#ggx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/graemerocher/status/140069545481216000" target="_blank"&gt;@graemerocher&lt;/a&gt;：用Groovy脚本尝试了一下&lt;a target="_blank" href="https://search.twitter.com/search?q=%23gorm"&gt;#gorm&lt;/a&gt; for &lt;a target="_blank" href="https://search.twitter.com/search?q=%23mongodb"&gt;#mongodb&lt;/a&gt;的最新快照 &lt;a target="_blank" href="http://t.co/yiRjflPO"&gt;http://t.co/yiRjflPO&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0" target="_blank"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails" target="_blank"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails" target="_blank"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/SpringSourceJob" target="_blank"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/search?q=springsource" target="_blank"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Grails-Boston/boards/view/viewthread?thread=18030652" target="_blank"&gt;Looking for Grails devs for a long term contract at Novartis&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/366" target="_blank"&gt;Senior Grails/Hibernate Engineer &amp;ndash; Nashville, TN&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/365" target="_blank"&gt;Sr Software Engineer at EnergyScoreCards in NYC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://groups.google.com/forum/#!topic/grails/X8FDMTMFID4" target="_blank"&gt;Perfect remote working job opportunity for Grails freelance web developers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/367" target="_blank"&gt;Grails contract in Cambridge, MA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.startuply.com/Jobs/Grails_UX_developer_5671_1.aspx" target="_blank"&gt;Grails UX developer in Boston&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/nofud/status/139377902193090560" target="_blank"&gt;@nofud&lt;/a&gt;: Looking for an an ExtJS 3 expert urgently for a short mission. Grails knowledge a plus.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/padraigcarroll/status/139728341254144000" target="_blank"&gt;@padraigcarroll&lt;/a&gt;: Recruiting a senior Java GRAILS developer at present, let me know if you&amp;rsquo;re up for a chat about this &lt;a href="mailto:padraig.carroll@harveynash.ie"&gt;padraig.carroll@harveynash.ie&lt;/a&gt; 01 67414&amp;hellip;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://kforce.com/Jobs/Job.aspx?job=1696~AQG~1117649T1~99" target="_blank"&gt;Java Developers with GRAILS expertise in Arlington, VA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.net-temps.com/job/vial/5522/java_grails_oracle_architect.html" target="_blank"&gt;Java/Grails/Oracle Architect (immediate start) in Sacramento CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://losangeles.craigslist.org/lac/sof/2711174742.html" target="_blank"&gt;Grails Developer for PlayItFWD in Los Angeles, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.javatalks.ru/ftopic27426/Java-Groovy-Grails-developer-for-Exigen-Services--Minsk-" target="_blank"&gt;Java/Groovy/Grails developer for Exigen Services (Minsk)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.clearancejobs.com/?action=view_job&amp;amp;jobID=1482089" target="_blank"&gt;GRAILS / J2EE Developer in Foster City, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.myitjobboard.com/ohio-jobs/columbus/sr.-developer-analyst-%28grails%29-J3H18Y6NJJKMSLVR0BQ.html" target="_blank"&gt;Sr. Developer Analyst (Grails) in Columbus, OH&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.technojobs.co.uk/job.phtml/747744" target="_blank"&gt;Java developer &amp;ndash; Groovy/ Grails &amp;ndash; London &amp;ndash; 6 month rolling contract&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/ajaxray/status/140879201841577985" target="_blank"&gt;@ajaxray&lt;/a&gt;: Do you know &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;? or &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; at least? Please contact me.&lt;br /&gt;
    Looking for 2 full time fresher/mid level Grails developer.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Looking-Grails-developer-in-Edmonton-39757.S.81419601?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=81419601" target="_blank"&gt;Looking for Grails developer in Edmonton, AB &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Startup-looking-Grails-developer-in-39757.S.81483618?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=81483618" target="_blank"&gt;Startup looking for Grails developer in Chicago, IL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Need-Sr-Developer-Analyst-Grails-39757.S.82053766?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=82053766" target="_blank"&gt;Need Sr. Developer/Analyst (Grails)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Groovy-Java-Sr-Developer-Contract-39757.S.81515646?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=81515646" target="_blank"&gt;Groovy / Java Sr. Developer (Contract) in an exciting cleantech startup &amp;ndash; San Francisco, CA&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011" target="_blank"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;December 8&lt;sup&gt;th&lt;/sup&gt; and 9&lt;sup&gt;th&lt;/sup&gt; in London&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Grails-Boston/events/34746092/" target="_blank"&gt;Groovy 1.8 / Grails 2.0 New Features &amp;ndash; December 7, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Boston Grails Users&amp;rsquo; Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Seattle-Groovy/events/32345342/" target="_blank"&gt;Thursday, January 12, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-47%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/nDo07MOJ08lFVlCxg-tuAnrXXeY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nDo07MOJ08lFVlCxg-tuAnrXXeY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/nDo07MOJ08lFVlCxg-tuAnrXXeY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nDo07MOJ08lFVlCxg-tuAnrXXeY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=SAuVQ037vbM:OW-bhtW0MrA:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=SAuVQ037vbM:OW-bhtW0MrA:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=SAuVQ037vbM:OW-bhtW0MrA:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/SAuVQ037vbM" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-47%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/spock">Spock</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/11">权限</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 28 Nov 2011 12:25:49 +0000</pubDate>
 <dc:creator>huwh</dc:creator>
 <guid isPermaLink="false">550 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-47%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-46）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/OmoC37jFZmM/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-46%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a title=" This Week in Grails (2011-46)" href="http://burtbeckwith.com/blog/?p=1054" rel="bookmark"&gt;This Week in Grails (2011-46)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;本周会召开Devoxx大会以及第一届Gr8Conf的澳洲大会，还会有不少Twitter的活动 &amp;ndash; 请查看&lt;a target="_blank" href="https://twitter.com/#!/search/%23gr8conf"&gt;#gr8conf&lt;/a&gt;和&lt;a target="_blank" href="https://twitter.com/#!/search/%23devoxx"&gt;#devoxx&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;如果你还有没有拿到伦敦的&lt;a target="_blank" href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;大会的入场券，赶紧了，三周后就要召开了。&lt;/p&gt;
&lt;p&gt;我写了几篇博文：可以看看 &lt;a target="_blank" href="http://burtbeckwith.com/blog/?p=1029"&gt;Grails 2.0中的Hibernate Bag&lt;/a&gt;和&lt;a target="_blank" href="http://burtbeckwith.com/blog/?p=1041"&gt;Grails中的动态Controller&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;我听到传闻，本周Grails 2.0 RC2可能会发布 &lt;img src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a href="http://burtbeckwith.com/blog/?cat=32" target="_blank"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a href="http://feeds.feedburner.com/this-week-in-grails" target="_blank"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.vitoria-gasteiz.org/" target="_blank"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.groovyq.net/" target="_blank"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://t.co/" target="_blank"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.nabiladouani.fr/" target="_blank"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://glaforge.appspot.com/article/gaelyk-1-1-released"&gt;Gaelyk 1.1发布了&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://contraptionsforprogramming.blogspot.com/2011/11/first-ever-vancouver-eclipse.html"&gt;第一次的温哥华Eclipse Hackathon&amp;hellip;成功！&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blog.cloudfoundry.com/post/12928974099/now-you-can-tunnel-into-any-cloud-foundry-data-service"&gt;现在你可以Tunnel任何的Cloud Foundry的数据服务&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://kousenit.wordpress.com/2011/11/18/up-and-running-groovy-an-oreilly-screencast-for-my-manning-book-wait-what/"&gt;Up and Running Groovy：一个我正在为Manning出版社撰写的书籍的O&amp;rsquo;Reilly的视频（嘿，这是怎么回事？）【译注：注意，这里是两家出版社】&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.intelligrape.com/blog/2011/11/16/creating-a-rest-json-api-with-grails-and-spring-security/"&gt;使用Grails和Spring Security创建一个安全的REST JSON API，仅需简单的三步&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.redtoad.ca/ataylor/2011/11/h2-database-console-in-grails-2/"&gt;Grails 2中的H2数据库控制台&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://mrhaki.blogspot.com/2011/11/grails-goodness-internationalize.html"&gt;Grails技巧：使用JAWR插件国际化Javascript Message&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://mrhaki.blogspot.com/2011/11/groovy-goodness-create-simple-builders.html"&gt;Groovy技巧：使用闭包创建简单的Builder&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://leanjavaengineering.wordpress.com/2011/11/18/grails-push/"&gt;Grails中使用Browser Push&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.intelligrape.com/blog/2011/11/14/validating-emails-urls-and-date-using-java-api/"&gt;使用Java API验证email、url和日期&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.intelligrape.com/blog/2011/11/14/grails-spring-security-plugin-user-swticher/"&gt;Grails Spring Security插件：切换用户&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-11-14"&gt;http://observato riodegrails.com/hoy/?date=2011-11-14&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-11-15"&gt;http://observato riodegrails.com/hoy/?date=2011-11-15&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-11-16"&gt;http://observato riodegrails.com/hoy/?date=2011-11-16&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-11-17"&gt;http://observato riodegrails.com/hoy/?date=2011-11-17&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-11-18"&gt;http://observato riodegrails.com/hoy/?date=2011-11-18&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.springsource.org/node/3305"&gt;Spring每周观察，2011年11月15日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周发布了3个新插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/bb"&gt;bb&lt;/a&gt; 0.4. 支持使用KefirBB的bb代码；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/simple-captcha"&gt;simple-captcha&lt;/a&gt; 0.7.1. 创建简单的图片CAPTCHA，阻止HTML表单的自动完成和提交；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/jquery-bvalidator"&gt;jquery-bvalidator&lt;/a&gt; 0.55.1. 针对jQuery资源文件的表单验证器插件。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有17个更新插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/aws"&gt;aws&lt;/a&gt; 1.2.12.1. 提供了对Amazon Web Services (AWS)简单功能的便捷访问；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/codenarc"&gt;codenarc&lt;/a&gt; 0.16.1. Groovy的静态代码分析；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/concordion"&gt;concordion&lt;/a&gt; 0.1.1. 为Concordion（用Java编写自动化验收测试的开源工具）与Grails应用之间提供了 方便的集成；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/db-reverse-engineer"&gt;db-reverse-engineer&lt;/a&gt; 0.4. 将数据库逆向创建Grails Domain Class；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/drools-gorm"&gt;drools-gorm&lt;/a&gt; 0.5.5. 整合了Drools 5.2和jBPM 5 ，并使用GORM提供了持久存储；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/dynamic-controller"&gt;dynamic-controller&lt;/a&gt; 0.3. 支持Controller混合，这里的Action闭包可以来自不同的地方，如现有Controller、文件、数据源等。还可以动态的创建完整的Controller；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/jesque"&gt;jesque&lt;/a&gt; 0.2.0. 用更Groovy的方法使用jesque;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/jesque-web"&gt;jesque-web&lt;/a&gt; 0.2.0. 查看和管理jesque队列、任务和工作者的Web接口；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/joda-time"&gt;joda-time&lt;/a&gt; 1.3. 在Grails中集成了Joda Time date/time库；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/jquery-mobile"&gt;jquery-mobile&lt;/a&gt; 1.0.3. 提供了 jQuery mobile框架的资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/markdown"&gt;markdown&lt;/a&gt; 1.0.0.RC1. 支持markdown的一组标签库和服务；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/new-doc"&gt;new-doc&lt;/a&gt; 0.3.1. 为Grails 2.0.x的Doc命令中额外功能提供了反向移植;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-saml"&gt;spring-security-saml&lt;/a&gt; 1.0.0.M5. 给Spring Security插件提供了SAML 2.x支持；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-social-core"&gt;spring-social-core&lt;/a&gt; 0.1.30. 允许你的应用去连接软件即服务（SaaS）的提供商，比如Facebook和Twitter；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-social-twitter"&gt;spring-social-twitter&lt;/a&gt; 0.1.30. 将你的应用跟Twitter连接起来；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/uploadr"&gt;uploadr&lt;/a&gt; 0.5.4. HTML5拖拽文件上传器；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/wicket"&gt;wicket&lt;/a&gt; 1.4.9. 使用Wicket框架，将其作为视图渲染技术的替代品。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/wendydevolder/status/137816203480662016"&gt;@wendy devolder&lt;/a&gt;：在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grailsx"&gt;#grailsx&lt;/a&gt;（12月8日～9日）大会上可以遇到我，这是一个为期2天的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;和&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;的大会，涉及&lt;a target="_blank" href="https://search.twitter.com/search?q=%23griffon"&gt;#griffon&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23gradle"&gt;#gradle&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23discobot"&gt;#discobot&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23spock"&gt;#spock&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/skillsmatter"&gt;@skillsmatter&lt;/a&gt; &lt;a target="_blank" href="http://t.co/pjPq4M4k"&gt;http://t.co/pjPq4M4k&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/keithsthomas/status/135904595321962497"&gt;@keiths thomas&lt;/a&gt;：刚在我的iPad上安装了Greg的小工具，用于管理我的Grails AWS的安装，真不错！&lt;a target="_blank" href="http://t.co/3jCxiicq"&gt;http://t.co/3jCxiicq&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tomaslin/status/136118048804450304"&gt;@tomaslin&lt;/a&gt;：推荐Grails开发人员，得mac book air &amp;ndash; &lt;a target="_blank" href="http://t.co/VKARBeWQ"&gt;http://t.co/VKARBeWQ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/rfletcherEW/status/136188127940329472"&gt;@rfletcherEW&lt;/a&gt;：我刚刚发布了&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Jodatime"&gt;#Jodatime&lt;/a&gt;插件的v1.3，支持Grails 2的单元测试、增强的Groovy Range等等。&lt;a target="_blank" href="http://t.co/VA2H1jP4"&gt;http://t.co/VA2H1jP4&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/rfletcherEW/status/136441562988154880"&gt;@rfletcherEW&lt;/a&gt;：用&lt;a target="_blank" href="https://twitter.com/#!/TwBootstrap"&gt;@TwBootstrap&lt;/a&gt;玩转&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;脚手架：&lt;a target="_blank" href="http://t.co/SyqeVjxi"&gt;http://t.co/SyqeVjxi&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/greach_es/status/136746612419604481"&gt;@greach_es&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Greach"&gt;#Greach&lt;/a&gt;上的所有视频都可以看了，Groovy的西班牙大会&lt;a target="_blank" href="http://t.co/sLDn6bPC"&gt;http://t.co/sLDn6bPC&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23griffon"&gt;#griffon&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/puredanger/status/137122673628155904"&gt;@puredanger&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23strangeloop"&gt;#strangeloop&lt;/a&gt;播客&lt;a target="_blank" href="https://search.twitter.com/search?q=%237"&gt;#7&lt;/a&gt; &amp;ndash; 采访来自&lt;a target="_blank" href="https://search.twitter.com/search?q=%23devoxx"&gt;#devoxx&lt;/a&gt;的Guillaume Laforge和V&amp;aacute;clav Pech &lt;a target="_blank" href="http://t.co/m7zHNxEa"&gt;http://t.co/m7zHNxEa&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23gpars"&gt;#gpars&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/jameskbride/status/137167001599737856"&gt;@jameskbride&lt;/a&gt;：使用内嵌SQL生成快速报告的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;脚本 == Sqrvy .&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/keithsthomas/status/137230070724038656"&gt;@keithsthomas&lt;/a&gt;：感谢Grails社区，让我在很短的时间内就能创建自己的网站。现在上线了。 &lt;a target="_blank" href="http://t.co/VSEZG7CB"&gt;http://t.co/VSEZG7CB&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/AzureUG/status/137280650700001281"&gt;@AzureUG&lt;/a&gt;：观看昨晚&lt;a target="_blank" href="https://twitter.com/#!/tcjug"&gt;@tcjug&lt;/a&gt;上，&lt;a target="_blank" href="https://twitter.com/#!/colinharrington"&gt;@colinharrington&lt;/a&gt;关于&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;的演讲，感谢&lt;a target="_blank" href="https://twitter.com/#!/jeffjjensen"&gt;@jeffjjensen&lt;/a&gt; &lt;a target="_blank" href="http://t.co/Y4jInBcr"&gt;http://t.co/Y4jInBcr&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/medfloss/status/137503210184257536"&gt;@medfloss&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23openEHR"&gt;#openEHR&lt;/a&gt;-Gen框架是一个&lt;a target="_blank" href="https://search.twitter.com/search?q=%23EMR"&gt;#EMR&lt;/a&gt;系统生成器，它是基于使用了&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;/&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;的openEHR  &lt;a target="_blank" href="http://t.co/FeOFPudL"&gt;http://t.co/FeOFPudL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/winkler1/status/137684582005878784"&gt;@winkler1&lt;/a&gt;：如果冲突增加，我会让Jenkins &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;构建中的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23codenarc"&gt;#codenarc&lt;/a&gt;失败，状态越好顶点就会越低。基本上，就是一个不起眼的柱状图。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/SpringSourceJob"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobs.vmware.com/search?q=springsource"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/noelwiland/status/137270096673505280"&gt;@noelwila nd&lt;/a&gt;: COLUMBUS &amp;ndash; Looking for a Sr &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Java"&gt;#Java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Developer"&gt;#Developer&lt;/a&gt; with exp using &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; &amp;amp; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;! Email me if you are interested &lt;a href="mailto:noel.wiland@compuware.com"&gt;noel.wiland@compuware.com&lt;/a&gt; thnx&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.code3.dk/ledige-stillinger/"&gt;Erfaren systemudvikler s酶ges &amp;ndash; Code3, K酶benhavn&lt;/a&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;  &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/364"&gt;Grails/JEE Developer &amp;ndash; Tampa Bay, FL&lt;/a&gt;  &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;a target="_blank" href="https://twitter.com/#!/Brandon_Schott/status/136894696420147201"&gt;@Bran don_Schott&lt;/a&gt;: I am hiring a Web UI development consultant with Groovy Grails, Javascript/AJAX, CSS, and SQL DM your resume if you are inteested.  &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;a target="_blank" href="https://twitter.com/#!/exensio/status/136774652142952448"&gt;@exensio&lt;/a&gt; : Wir suchen IT Berater (w/m) mit hohem PZU-Faktor &amp;ndash; &lt;a target="_blank" href="http://t.co/jVr1uaqA"&gt;http://t.co/jVr1uaqA&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23doag2011"&gt;#doag2011&lt;/a&gt;  &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;a target="_blank" href="http://berlinstartupjobs.com/engineering/java-grails-developer-kaufda-juno-internet-gmbh-2/"&gt;Java + Grails Developer // kaufDA 鈥?Juno Intern t GmbH&lt;/a&gt;  &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;a target="_blank" href="http://www.jobs3000.net/id-8244ebd5fe54bd8b/listing/java-entwickler-in-mit-grails-ambitionen.html"&gt;Java-Entwickler/in mit Grails-Ambitionen &amp;ndash; Berlin&lt;/a&gt;  &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;a target="_blank" href="http://www.telecommutejoblist.com/grails-developer-playitfwd-ventura-losangeles-santabarbara"&gt;Grails Developer, PlayItFWD (Ventura-LosAngeles-SantaBarbara)&lt;/a&gt;  &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Looking-Jr-Grails-Developer-in-39757.S.80688634?qid=f19a8973-db58-4f10-9271-63b052adccdc"&gt;Looking for a Jr. Grails Developer in Columbus, OH&lt;/a&gt;  &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Looking-Grails-developer-in-Minneapolis-39757.S.81139023?qid=f19a8973-db58-4f10-9271-63b052adccdc"&gt;Looking for a Grails developer in Minneapolis/St Paul. 6 month contract&lt;/a&gt;  &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Grails-UI-developer-in-Tampa-39757.S.81178505?qid=f19a8973-db58-4f10-9271-63b052adccdc"&gt;Grails / UI developer in Tampa Bay area&lt;/a&gt;  &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;a target="_blank" href="http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&amp;amp;discussionID=81163658&amp;amp;gid=76751"&gt;Software Developer (Groovy) in Duluth, GA&lt;/a&gt;  &lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;a target="_blank" href="http://www.linkedin.com/groupItem?view=&amp;amp;gid=76751&amp;amp;type=member&amp;amp;item=80969397&amp;amp;qid=5e6b2cc9-55be-4421-ad8e-8d976d1c21a0"&gt;Java Developer with Groovy experience required &amp;ndash; London &amp;ndash; Permanent&lt;/a&gt; &lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&lt;i g="" src="/blog/images/pop.gif"&gt;&lt;/i&gt;&lt;/p&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;December 8&lt;sup&gt;th&lt;/sup&gt; and 9&lt;sup&gt;th&lt;/sup&gt; in London&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Oslo-Groovy-Meetup/events/37174552/"&gt;Oppstartsm? 竧e med MOP og Grails 2.0 &amp;ndash; November 21, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Oslo Groovy Meetup&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Grails-Boston/events/34746092/"&gt;Groovy 1.8 / Grails 2.0 New Features &amp;ndash; December 7, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Boston Grails Users&amp;rsquo; Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Seattle-Groovy/events/32345342/"&gt;Thursday, January 12, 2012&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-46%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/fg_HuNIwW3jxCf9TaaWJW1BJzpE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fg_HuNIwW3jxCf9TaaWJW1BJzpE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/fg_HuNIwW3jxCf9TaaWJW1BJzpE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/fg_HuNIwW3jxCf9TaaWJW1BJzpE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=OmoC37jFZmM:DRqEAa-I4eM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=OmoC37jFZmM:DRqEAa-I4eM:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=OmoC37jFZmM:DRqEAa-I4eM:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/OmoC37jFZmM" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-46%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/taxonomy/term/14">Gaelyk</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/23">Groovy++</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/11">权限</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 21 Nov 2011 03:02:30 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">548 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-46%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-45）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/Aw8d6c4T0RY/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-45%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a rel="bookmark" href="http://burtbeckwith.com/blog/?p=1016" title=" This Week in Grails (2011-45)"&gt;This Week in Grails (2011-45)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;本周，Groovy 1.8.4和Groovy 2.0 beta（更名为Groovy 1.9）发布了。可以查看&lt;a target="_blank" href="https://glaforge.appspot.com/article/latest-groovy-releases-and-roadmap-update"&gt;Guillaume关于新特性的博文&lt;/a&gt;，包括静态类型检查和对Java 7 &lt;a target="_blank" href="http://java.sun.com/developer/technicalArticles/DynTypeLang/"&gt;invokedynamic&lt;/a&gt;的支持。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;Peter Ledbrook为Grails 2.0的新特性召开了一个网络研讨会（更好的产品：Grails 2.0），你可以在&lt;a href="http://www.springsource.org/node/3300" target="_blank"&gt;这里观看&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;本周，我写了一些个博文，写这些&amp;ldquo;真实&amp;rdquo;的帖子而不仅仅是这些总结，有些不可思议。&lt;img class="wp-smiley" alt=":)" src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_smile.gif" /&gt;  请看：&lt;a href="http://burtbeckwith.com/blog/?p=993" target="_blank"&gt;在Domain Class中无需使用Hodler就能访问GrailsApplication和ApplicationContext&lt;/a&gt;，&lt;a href="http://burtbeckwith.com/blog/?p=1003" target="_blank"&gt;重写Groovy的构造函数&lt;/a&gt;，&lt;a href="http://burtbeckwith.com/blog/?p=1017" target="_blank"&gt;创建你自己的Grails holder类&lt;/a&gt;。&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a target="_blank" href="http://burtbeckwith.com/blog/?cat=32"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a target="_blank" href="http://feeds.feedburner.com/this-week-in-grails"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.vitoria-gasteiz.org/"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://t.co/"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.nabiladouani.fr/"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/articulos/gran-exito-de-la-conferencia-greach-2011/" target="_blank"&gt;2011年Greach大会大获成功&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.intelligrape.com/blog/2011/11/07/grails-find-number-of-queries-executed-for-a-particular-request/" target="_blank"&gt;Grails：查出某个请求执行的查询数量&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mrhaki.blogspot.com/2011/11/groovy-goodness-find-non-null-results.html" target="_blank"&gt;Groovy技巧：转换集合元素之后查出非空结果&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.chariotsolutions.com/2011/11/groovy-algorithms-shunting-yard.html" target="_blank"&gt;Groovy算法：调度场&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://glaforge.appspot.com/article/a-groovy-page-on-google" target="_blank"&gt;Google+中的Groovy页面&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;也可以查看&lt;a target="_blank" href="https://plus.google.com/117411438136918964913/posts#117411438136918964913/posts"&gt;Grails页面&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.christianoestreich.com/2011/11/injectable-grails-plugins/" target="_blank"&gt;让用户将自定义Bean注入你的Grails插件&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jworks.nl/2011/11/11/this-week-in-discobot-45-2011/" target="_blank"&gt;Discobot每周观察（2011-45）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://groovy.329449.n5.nabble.com/ANN-Announcing-CodeNarc-0-16-td4983153.html" target="_blank"&gt;CodeNarc 0.16问世了&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.programania.net/java/groovy/tdd-on-grails/" target="_blank"&gt;Grails中的TDD&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-07" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-07&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-08" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-08&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-09" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-09&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-10" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-10&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-11" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-11&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.springsource.org/node/3301" target="_blank"&gt;Spring每周观察，2011年11月8日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周没有新发布的插件，但是有12个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/atmosphere" target="_blank"&gt;atmosphere&lt;/a&gt; 0.4.1.2. 提供了与Atmosphere项目（一种 轻便的AjaxPush/Comet和WebSocket框架）的集成；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/clover" target="_blank"&gt;clover&lt;/a&gt; 3.1.2. 集成了Clover 代码覆盖工具；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/code-coverage" target="_blank"&gt;code-coverage&lt;/a&gt; 1.2.5. 使用Cobertura生成代码覆盖率报告；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/cxf-client" target="_blank"&gt;cxf-client&lt;/a&gt; 1.2.2. 使用现 有（或新的）Apache CXF wsdl2java生成的内容调用SOAP服务；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/sanitizer" target="_blank"&gt;sanitizer&lt;/a&gt; 0.7.0. 使用OWASP AntiSamy Filters净化标记（ HTML、XHTML、CSS）；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-twitter" target="_blank"&gt;spring-security-twitter&lt;/a&gt; 0.4. Twitter认证，作为Spring Security核心插件的扩展；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/struts-menu" target="_blank"&gt;struts-menu&lt;/a&gt; 1.2.Struts Menu的Grails包装；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/taggable" target="_blank"&gt;taggable&lt;/a&gt; 1.0.1. 提供了关联标签和Domain class的 支持；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/uploadr" target="_blank"&gt;uploadr&lt;/a&gt; 0.5.2. HTML5拖拽文件上传器；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/website-optimizer" target="_blank"&gt;website-optimizer&lt;/a&gt; 0.2.1. 简化Google站点优化器集成到Grails应用的标签库；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/yui-minify-resources" target="_blank"&gt;yui-minify-resources&lt;/a&gt; 0.1.4. 使用YUI压缩库精简静态CSS和JS资源；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/zkui" target="_blank"&gt;zkui&lt;/a&gt; 0.5.M1. 无缝的将ZK集成到Grails的基础设施；使用 Grails的基础设施，如GSP、controller，而不是使用作为ZKGrails插件。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/ArturoHerrero/status/132888554337599488" target="_blank"&gt;@ArturoHerrero&lt;/a&gt;：关于&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;的函数编程的幻灯 &lt;a target="_blank" href="http://t.co/nDo3KXEG"&gt;http://t.co/nDo3KXEG&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23greach"&gt;#greach&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/weceem/status/133596897603629058" target="_blank"&gt;@weceem&lt;/a&gt;：我们很高兴的宣布Weceem CMS 1.1发布了，更多信息请看：&lt;a target="_blank" href="http://t.co/AenlKGq8"&gt;http://t.co/AenlKGq8&lt;/a&gt;（包括 &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; 2 RC1的兼容性）&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mjparme/status/133665993418477568" target="_blank"&gt;@mjparme&lt;/a&gt;：为Domain对象写Grails的集成测试很乏味的，但是从长远来看这是值得的。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/energizedwork/status/133685112134045696" target="_blank"&gt;@energizedwork&lt;/a&gt;：&lt;a target="_blank" href="https://twitter.com/#!/mfloryan"&gt;@mfloryan&lt;/a&gt; + &lt;a target="_blank" href="https://twitter.com/#!/marcjohnson"&gt;@marcjohnson&lt;/a&gt;将在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23xpdaybe"&gt;#xpdaybe&lt;/a&gt;上花60分钟开发一个测试驱动的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;应用 &amp;ndash; &lt;a target="_blank" href="http://t.co/HQXvOHUv"&gt;http://t.co/HQXvOHUv&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/spring_io/status/133900851193446400" target="_blank"&gt;@spring_io&lt;/a&gt;：公开征集议题，议题可涉及Spring、Groovy/Grails和Cloud &lt;a target="_blank" href="http://t.co/FYxY9VOC"&gt;http://t.co/FYxY9VOC&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23springio"&gt;#springio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/ibriscoe/status/133918665958637568" target="_blank"&gt;@ibriscoe&lt;/a&gt;：什么？？&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grailsx"&gt;#grailsx&lt;/a&gt;有两个话题！？&lt;a target="_blank" href="http://t.co/cPfQfd6r"&gt;http://t.co/cPfQfd6r&lt;/a&gt;  现在我真的需要Hermione的时间转换器 &lt;a target="_blank" href="http://t.co/uIbH2gpy"&gt;http://t.co/uIbH2gpy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/gr8conf/status/133928292565782528" target="_blank"&gt;@gr8conf&lt;/a&gt;：GR8Conf登陆页面已经更新。&lt;a target="_blank" href="http://t.co/HmRoTPoK"&gt;http://t.co/HmRoTPoK&lt;/a&gt;现在运行在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23weceem"&gt;#weceem&lt;/a&gt;上 &lt;a target="_blank" href="https://search.twitter.com/search?q=%23gr8conf"&gt;#gr8conf&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/rotty3000/status/134144124516450304" target="_blank"&gt;@rotty3000&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23arkadiko"&gt;#arkadiko&lt;/a&gt;，5分钟内将&lt;a target="_blank" href="https://search.twitter.com/search?q=%23osgi"&gt;#osgi&lt;/a&gt;整合到&lt;a target="_blank" href="https://search.twitter.com/search?q=%23spring"&gt;#spring&lt;/a&gt;/&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;应用中 &lt;a target="_blank" href="http://t.co/4ec5nlSd"&gt;http://t.co/4ec5nlSd&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/jameschesters/status/134201884041936896" target="_blank"&gt;@jameschesters&lt;/a&gt;：刚刚发布的：&lt;a target="_blank" href="https://twitter.com/#!/ldaley"&gt;@ldaley&lt;/a&gt;关于&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Geb"&gt;#Geb&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Gradle"&gt;#Gradle&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23webautomation"&gt;#webautomation&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/skillsmatter"&gt;@skillsmatter&lt;/a&gt;的讨论。查看这里：&lt;a target="_blank" href="http://t.co/TIVIZmsg"&gt;http://t.co/TIVIZmsg&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grailsx"&gt;#grailsx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/padraicdoyle/status/134464488672989184" target="_blank"&gt;@padraicdoyle&lt;/a&gt;：为了获得事务性邮件，切换到了amazon ses&amp;hellip;grails aws插件&lt;a target="_blank" href="http://t.co/Gg7qpgxl"&gt;http://t.co/Gg7qpgxl&lt;/a&gt;平稳过渡&amp;hellip;5分钟内&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/pledbrook/status/134515957447131136" target="_blank"&gt;@pledbrook&lt;/a&gt;：&lt;a target="_blank" href="http://t.co/4A8FWxUt"&gt;http://t.co/4A8FWxUt&lt;/a&gt;现在运行在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; 2.0.0.RC1上&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/marcoVermeulen/status/134568444967387137" target="_blank"&gt;@marcoVermeulen&lt;/a&gt;：刚意识到&lt;a target="_blank" href="https://search.twitter.com/search?q=%23sts"&gt;#sts&lt;/a&gt;现在对Controller和Action提供了标签补全功能。不错！&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/gershwinou/status/134579473084456960" target="_blank"&gt;@gershwinou&lt;/a&gt;：我在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;应用中自制了一个&lt;a target="_blank" href="https://search.twitter.com/search?q=%23github"&gt;#github&lt;/a&gt; issues的前端。有人有兴趣做成插件么？&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/sebi2706/status/134582191769391105" target="_blank"&gt;@sebi2706&lt;/a&gt;：在法国的里维埃拉，我的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &amp;amp; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;福传已经开始了！&lt;a target="_blank" href="http://t.co/9ksIrlvW"&gt;http://t.co/9ksIrlvW&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/epragt/status/134723386352996352" target="_blank"&gt;@epragt&lt;/a&gt;：编程&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23discobot"&gt;#discobot&lt;/a&gt;以及专研&lt;a target="_blank" href="https://search.twitter.com/search?q=%23ant"&gt;#ant&lt;/a&gt; 脚本显然是有代价的 &lt;a target="_blank" href="https://twitter.com/#!/marcinerdmann"&gt;@marcinerdmann&lt;/a&gt; &lt;a target="_blank" href="http://t.co/z23NxJLn"&gt;http://t.co/z23NxJLn&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/benboggess/status/134808140381298688" target="_blank"&gt;@benboggess&lt;/a&gt;：是否厌倦了在子类中重复声明transients？static transients = Parent.transients + ['moreTransients'] &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/eriwen/status/135090052761001985" target="_blank"&gt;@eriwen&lt;/a&gt;：我希望Groovy程序员更多的指定变量的类型。如果你知道它是一个List，就不要使用&amp;ldquo;def&amp;rdquo;！看看你，&lt;a target="_blank" href="https://twitter.com/#!/eriwen"&gt;@eriwen&lt;/a&gt;，都27岁了！你这个白痴！&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/scottyfred/status/135132203624579072" target="_blank"&gt;@scottyfred&lt;/a&gt;：使用&lt;a target="_blank" href="https://search.twitter.com/search?q=%23gradle"&gt;#gradle&lt;/a&gt;包装&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;脚本的细节：&lt;a target="_blank" href="http://t.co/jr8cAqks"&gt;http://t.co/jr8cAqks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/wmacgyver/status/135188843308658689" target="_blank"&gt;@wmacgyver&lt;/a&gt;：貌似&lt;a target="_blank" href="https://twitter.com/#!/cemerick"&gt;@cemerick&lt;/a&gt;刚在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23clojure"&gt;#clojure&lt;/a&gt;中创建了&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; grab &lt;a target="_blank" href="http://t.co/oRBC3Fl1"&gt;http://t.co/oRBC3Fl1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/danklynn/status/135439806997069825" target="_blank"&gt;@danklynn&lt;/a&gt;：嗨，&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;开发者，如果你的GSP中有&amp;ldquo;&amp;lt;%&amp;quot;或者&amp;quot;%&amp;gt;&amp;rdquo;，&lt;a target="_blank" href="https://search.twitter.com/search?q=%23youredoingitwrong"&gt;#youredoingitwrong&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0" target="_blank"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails" target="_blank"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails" target="_blank"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/SpringSourceJob" target="_blank"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/search?q=springsource" target="_blank"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Grails-Boston/boards/view/viewthread?thread=17603912" target="_blank"&gt;Grails/Groovy Developer in Cambridge, MA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/363" target="_blank"&gt;Senior Cloud Developer at Lexmark International in Lexington, KY&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/bermonpainter/status/134023905017995264" target="_blank"&gt;@bermonpainter&lt;/a&gt;: Any freelance front-end devs looking for a  quick 1-2 week project (tight timeline)? HTML/CSS/JS on Grails.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobview.monster.com/Java-Groovy-Developer-Grails-Framework-Struts-JQuery-Job-Austin-TX-US-103740219.aspx?WT.mc_n=SM_Job_Twt_aus_mis_jobs" target="_blank"&gt;Java Groovy Developer &amp;ndash; Austin, TX&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/DIS_IT_Berlin/status/133863435199987712" target="_blank"&gt;@DIS_IT_Berlin&lt;/a&gt;: Backend Developer (Groovy and Grails) wanted! Bis Ende des Jahres mit Verl?ngerungsoption &lt;a target="_blank" href="https://search.twitter.com/search?q=%23dev"&gt;#dev&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23berlin"&gt;#berlin&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23freelance"&gt;#freelance&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/DIS_IT_Berlin/status/134260046111580160" target="_blank"&gt;@DIS_IT_Berlin&lt;/a&gt;: Welcher Groovy&amp;amp;Grails Entwickler (m/w) hat Kapazit?t f&amp;uuml;r ein neues Projekt in Berlin? Gerne auch Empfehlung! &lt;a target="_blank" href="https://search.twitter.com/search?q=%23dev"&gt;#dev&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23berlin"&gt;#berlin&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23freelance"&gt;#freelance&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/padraigcarroll/status/134566481542385664" target="_blank"&gt;@padraigcarroll&lt;/a&gt;: Java Grails position live at the moment! If you would like to work in Dublin, or would be interested in working within a small team in a gl&amp;hellip;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/0xPIT/status/134680055828848642" target="_blank"&gt;@0xPIT&lt;/a&gt;: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; and/or &lt;a target="_blank" href="https://search.twitter.com/search?q=%23playframework"&gt;#playframework&lt;/a&gt; developer? Work for for us and for good $ in lovely &lt;a target="_blank" href="https://search.twitter.com/search?q=%23munich"&gt;#munich&lt;/a&gt;. Msg me for more infos.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://cgug.org/jobboard/show/5" target="_blank"&gt;Groovy/Grails Developer &amp;ndash; Chicago&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/brentmhall/status/133719244323033089" target="_blank"&gt;@brentmhall&lt;/a&gt;: Looking for a seriously talented developer to join us &lt;a target="_blank" href="https://twitter.com/#!/HelloMedical"&gt;@HelloMedical&lt;/a&gt; &lt;a target="_blank" href="http://t.co/KaLEYIy7"&gt;http://t.co/KaLEYIy7&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobsearch.naukri.com/job-listings-Excellent-opening-for-Groovy-Grails--Spigot-Software-Private-Limited-Bengaluru-Bangalore-8-to-13-years-201011001216?xp=2&amp;amp;xz=1_0_20&amp;amp;xo=&amp;amp;xid=132100923239686400&amp;amp;qf[]=catid_2&amp;amp;qcrawled=n&amp;amp;f=-201011001216" target="_blank"&gt;Excellent opening for Groovy / Grails &amp;ndash; Bengaluru/Bangalore&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/GeoffWherrett/status/134729070578630657" target="_blank"&gt;@GeoffWherrett&lt;/a&gt;: Anyone know any Java contract developers? Grails experience preferred&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.wiseri.com/ofertas-de-trabajo/bilbao_area/desarrollador_web/303" target="_blank"&gt;Desarrollador web &amp;ndash; Bilbao&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Grails-Boston/boards/view/viewthread?thread=17758042" target="_blank"&gt;Grails/Groovy opportunity (Contract to hire) at Mobiquity in Wellesley, MA or Providence, RI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://uk.progressiverecruitment.com/en/job/Java-Developer-Groovy-on-Grails-N-Manchester-40-000/England-North-West/Perm/0/389274/" target="_blank"&gt;Java Developer with Grails in N.Manchester, UK &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://careers.bbgmanagement.com/index.php?m=portal&amp;amp;a=details&amp;amp;jobOrderID=721855" target="_blank"&gt;JAVA/J2EE &amp;ndash; Grails x2 Montreal or Ottawa&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.programmingjobs.co.uk/display-job/48454/Intranet_Developer_%28Java,_Groovy_" target="_blank"&gt;Intranet Developer (Java, Groovy &amp;amp; Grails, MySQL, Tomcat) in London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.aplitrak.com/?adid=Um9zcy44ODIzMC50d2lAYXN0b25jYXJ0ZXIuYXBsaXRyYWsuY29t" target="_blank"&gt;Grails Developer in London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://smarterhunt.com/a/detail.do/id-5afcd7f6-8ee9-4e04-bc82-05303f784e8d" target="_blank"&gt;JAVA/Grails/Oracle Architect in Rancho Cordova, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Hi-guys-hope-you-are-39757.S.79158182?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=79158182" target="_blank"&gt;Front end Java Developer with Grails and Groovy experience&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Immediate-need-contract-Groovy-Grails-39757.S.79152178?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=79152178" target="_blank"&gt;Immediate need for a contract Groovy / Grails developer in Minneapolis, MN&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Urgent-opening-Sr-Programmer-Analyst-39757.S.79735064?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=79735064" target="_blank"&gt;Urgent opening for the Sr Programmer Analyst, Initial Hyderabad and later to US (Addison, TX)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Web-Developer-position-in-Waltham-39757.S.79785192?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=79785192" target="_blank"&gt;Web Developer position in Waltham, MA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/3-Openings-FullTime-Grails-Developers-39757.S.79910378?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=79910378" target="_blank"&gt;3 Openings for Full-Time Grails Developers (both Junior and Senior Level) in Columbus, OH&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/jobs?viewJob=&amp;amp;jobId=2165603" target="_blank"&gt;Web Integrator at Hibe in Montreal&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/HandsOn-Lead-Architect-needed-Java-39757.S.79542862?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=79542862" target="_blank"&gt;Hands-On Lead Architect needed with Java/ScalaGroovy experience&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Need-Parttime-Freelance-Groovy-Grails-39757.S.79542793?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=79542793" target="_blank"&gt;Need a Part-time or a Freelance Groovy/Grails developer who can help coach the team in East Bay, CA&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://osdc.com.au/" target="_blank"&gt;GR8Conf Australia&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;15&lt;sup&gt;th&lt;/sup&gt; November 2011 in Canberra, Australia&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011" target="_blank"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;December 8&lt;sup&gt;th&lt;/sup&gt; and 9&lt;sup&gt;th&lt;/sup&gt; in London&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Oslo-Groovy-Meetup/events/37174552/" target="_blank"&gt;Oppstartsm?te med MOP og Grails 2.0 &amp;ndash; November 21, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Oslo Groovy Meetup&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-45%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/uI35FL93k1Z7NKcgFScwMtklblo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uI35FL93k1Z7NKcgFScwMtklblo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/uI35FL93k1Z7NKcgFScwMtklblo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/uI35FL93k1Z7NKcgFScwMtklblo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=Aw8d6c4T0RY:Tg7RfJzAJNk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=Aw8d6c4T0RY:Tg7RfJzAJNk:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=Aw8d6c4T0RY:Tg7RfJzAJNk:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/Aw8d6c4T0RY" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-45%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/23">Groovy++</category>
 <category domain="http://www.groovyq.net/taxonomy/term/10">IDE</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 14 Nov 2011 03:19:09 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">547 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-45%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-44）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/lAiiZ9W-6bo/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-44%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a rel="bookmark" href="http://burtbeckwith.com/blog/?p=986" title=" This Week in Grails (2011-44)"&gt;This Week in Grails (2011-44)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;最近有不少Groovy/Grails大会。我可以从Twitter看出，貌似伙计们在&lt;a href="http://greach.es/" target="_blank"&gt;Greach&lt;/a&gt;上过得不错。&lt;a href="http://skillsmatter.com/event-details/home/groovy-grails-exchange-2011/" target="_blank"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;（下个月召开）的时间表已经更新了，看起来那将是很有趣的几天。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;在插件部分，&lt;a href="http://grails.org/plugin/hibernate-search" target="_blank"&gt;Hibernate Search&lt;/a&gt;插件列在了更新列表中，最初版本只是概念的验证，而当前版本则是一个完整版。看起来它是&lt;a href="http://grails.org/plugin/searchable" target="_blank"&gt;Searchable&lt;/a&gt;插件的不错替代品。&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a href="http://burtbeckwith.com/blog/?cat=32" target="_blank"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a href="http://feeds.feedburner.com/this-week-in-grails" target="_blank"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.vitoria-gasteiz.org/" target="_blank"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.groovyq.net/" target="_blank"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://t.co/" target="_blank"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.nabiladouani.fr/" target="_blank"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://glaforge.appspot.com/article/groovy-domain-specific-languages-in-chicago" target="_blank"&gt;Groovy领域相关语言&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mrhaki.blogspot.com/2011/11/grassroots-groovy-reading-json-with.html" target="_blank"&gt;Groovy基础：用JsonSlurper读取JSON&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://glaforge.appspot.com/article/what-s-new-in-groovy-1-8-and-beyond" target="_blank"&gt;Groovy 1.8及后续版本的新特性&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jroller.com/melix/entry/groovy_static_type_checker_status" target="_blank"&gt;Groovy静态类型检查器近况&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blackdragsview.blogspot.com/2011/11/in-groovy-static-type-checker-status.html" target="_blank"&gt;Java方式，简单的类型推断和流程敏感的类型转换&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://kousenit.wordpress.com/2011/11/02/converting-groovy-maps-to-query-strings/" target="_blank"&gt;将Groovy map转换为查询字符串&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://theholyjava.wordpress.com/2011/11/02/groovy-creating-interface-stub-and-intercepting-all-calls-to-it/" target="_blank"&gt;Groovy：创建一个Interface Stub，截获发送给它的调用&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-01" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-01&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-02" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-02&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-03" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-03&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-11-04" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-11-04&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://forums.gradle.org/gradle/topics/this_week_in_gradle_2011_44" target="_blank"&gt;Gradle每周观察（2011-44）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.springsource.org/node/3299" target="_blank"&gt;Spring每周观察：2011年，11月1日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周新发布了1个插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/struts-menu" target="_blank"&gt;struts-menu&lt;/a&gt; 1.1. Struts Menu的Grails包装。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有12个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/cxf-client" target="_blank"&gt;cxf-client&lt;/a&gt; 1.1. 使用现 有（或新的）Apache CXF wsdl2java生成的内容调用SOAP服务；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/dojo" target="_blank"&gt;dojo&lt;/a&gt; 1.6.1.2. 添加Dojo javascript 工具；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/flash-player" target="_blank"&gt;flash-player&lt;/a&gt; 1.4. 为JW FLV媒体播放器提供了Grails TagLib包装器；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/hibernate-search" target="_blank"&gt;hibernate-search&lt;/a&gt; 0.1. 为Domcain class集成了Hibernate；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/json-rest-api" target="_blank"&gt;json-rest-api&lt;/a&gt; 1.0.11. 为GORM提供的JSON RESTful API；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-facebook" target="_blank"&gt;spring-security-facebook&lt;/a&gt; 0.3. Facebook认证插件，作为Grails Spring Security核心插件的扩展；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-twitter" target="_blank"&gt;spring-security-twitter&lt;/a&gt; 0.3.4. Twitter认证，作为Spring Security核心插件的扩展；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/swfobject" target="_blank"&gt;swfobject&lt;/a&gt; 2.2.1. swfobject的资源和标签；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/twitter-bootstrap" target="_blank"&gt;twitter-bootstrap&lt;/a&gt; 1.4.0.12. Twitter Bootstrap CSS框架资源文件：&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/weceem" target="_blank"&gt;weceem&lt;/a&gt; 1.1.SNAP4. 一个内容管理系统；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/xwiki-rendering" target="_blank"&gt;xwiki-rendering&lt;/a&gt; 0.3. 使用XWiki Rendering框架转换文本；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/yui" target="_blank"&gt;yui&lt;/a&gt; 2.8.2.1. 集成了Yahoo! UI库。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/JeffGortatowsky/status/131171942244941824" target="_blank"&gt;@JeffGortatowsky&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23s2gx"&gt;#s2gx&lt;/a&gt;总结：网络很烂、90分钟太长、演讲不错、食物一般、需要分开初学者和专家、cloud shmoud、芝加哥很棒&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/pmcneil/status/131179442029608960" target="_blank"&gt;@pmcneil&lt;/a&gt;：为了防止你错过&lt;a target="_blank" href="https://search.twitter.com/search?q=%23gr8conf"&gt;#gr8conf&lt;/a&gt;澳洲大会的时间表，已经将其刊登在&lt;a target="_blank" href="http://t.co/Fhpfflsx"&gt;http://t.co/Fhpfflsx&lt;/a&gt;上，如果你还没有拿到票，可以上去看看！&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23gr8"&gt;#gr8&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/webappblogger/status/131306581857017856" target="_blank"&gt;@webappblogger&lt;/a&gt;: WebApp-Blogger：Grails插件 &amp;ldquo;Counter&amp;rdquo; 发布了，&lt;a target="_blank" href="http://t.co/PbQgt8po"&gt;http://t.co/PbQgt8po&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23programming"&gt;#programming&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23plugin"&gt;#plugin&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/j_brisbin/status/131564793382440960" target="_blank"&gt;@j_brisbin&lt;/a&gt;：jstatebox &lt;a target="_blank" href="http://t.co/dwk8CSza"&gt;http://t.co/dwk8CSza&lt;/a&gt; 最终一致的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23JVM"&gt;#JVM&lt;/a&gt;数据操作。灵感来自于&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Riak"&gt;#Riak&lt;/a&gt;，但针对&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23scala"&gt;#scala&lt;/a&gt; apps.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/rfletcherEW/status/131598005601185792" target="_blank"&gt;@rfletcherEW&lt;/a&gt;：不确定这个测试是否有点疯狂：&lt;a target="_blank" href="http://t.co/iwVbv8R8"&gt;http://t.co/iwVbv8R8&lt;/a&gt; &amp;ndash; 创建一个&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;空应用，接着测试脚本在其Config.groovy中做了些什么？&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/pledbrook/status/131726160177532928" target="_blank"&gt;@pledbrook&lt;/a&gt;：这里跟进&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;用户指南的翻译：&lt;a target="_blank" href="http://t.co/UFdiGqNe"&gt;http://t.co/UFdiGqNe&lt;/a&gt; &amp;ndash; 欢迎更多的贡献者！&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/epragt/status/131876195179565056" target="_blank"&gt;@epragt&lt;/a&gt;：，跟&lt;a target="_blank" href="https://twitter.com/#!/marcinerdmann"&gt;@marcinerdmann&lt;/a&gt;在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23android"&gt;#android&lt;/a&gt;上忙活一整天。我们在动态类创建和装入上取得了不错的进展。干得好！&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/crazy4groovy/status/131908953104846849" target="_blank"&gt;@crazy4groovy&lt;/a&gt;：我的博客上发表了针对&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23screencast"&gt;#screencast&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23tutorial"&gt;#tutorial&lt;/a&gt;初学者的教程 @ &lt;a target="_blank" href="http://t.co/NS3VdilO"&gt;http://t.co/NS3VdilO&lt;/a&gt;. 欢迎评论和反馈 &lt;img class="wp-smiley" alt=":)" src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_smile.gif" /&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/tomaslin/status/132396296538562560" target="_blank"&gt;@tomaslin&lt;/a&gt;： 我们的小Grails应用不再是一纸空文了！&lt;a target="_blank" href="http://t.co/6BLC28Sj"&gt;http://t.co/6BLC28Sj&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/skillsmatter/status/132494651788771329" target="_blank"&gt;@skillsmatter&lt;/a&gt;：我们正在安排Groovy高手准备今年的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23ggx"&gt;#ggx&lt;/a&gt;，千万别错过！注册：&lt;a target="_blank" href="http://t.co/lsPnFMeQ"&gt;http://t.co/lsPnFMeQ&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23ggug"&gt;#ggug&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/skillsmatter"&gt;@skillsmatter&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/CedricChampeau/status/132518237140287488" target="_blank"&gt;@CedricChampeau&lt;/a&gt;：跟泛型战斗了一周后，&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;静态类型检查器应该可以正确的应对大多数情况了！&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/energizr/status/132543936324583424" target="_blank"&gt;@energizr&lt;/a&gt;：&lt;a target="_blank" href="https://twitter.com/#!/pledbrook"&gt;@pledbrook&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/graemerocher"&gt;@graemerocher&lt;/a&gt; &amp;ndash; 你看到&lt;a target="_blank" href="https://twitter.com/#!/energizedwork"&gt;@energizedwork&lt;/a&gt;最新的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;客户端站点了么？&lt;a target="_blank" href="http://t.co/6KhB9nlu"&gt;http://t.co/6KhB9nlu&lt;/a&gt; 路透社上的壮举：&lt;a target="_blank" href="http://t.co/b7LZGpKo"&gt;http://t.co/b7LZGpKo&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0" target="_blank"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails" target="_blank"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails" target="_blank"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/SpringSourceJob" target="_blank"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/search?q=springsource" target="_blank"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/351" target="_blank"&gt;Freelance Grails Dev &amp;ndash; Remote/Freelance&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/352" target="_blank"&gt;Grails Berater &amp;ndash; Karlsruhe, Germany&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.computrabajo.com.mx/bt-ofrd-rrsoluciones-114368.htm" target="_blank"&gt;Desarrollador Java con grails en Tecamachalco&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobview.monster.com/Sr-Software-Engineer-Groovy-Grails-Job-Bellevue-WA-US-103555870.aspx" target="_blank"&gt;Sr. Software Engineer &amp;ndash; Groovy/Grails in Bellevue, WA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Help-from-Grails-community-in-39757.S.78067382?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=78067382" target="_blank"&gt;Part-time Grails developer in Denver, CO&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/rajivnarula/status/131381776525443072" target="_blank"&gt;@rajivnarula&lt;/a&gt;: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Contract"&gt;#Contract&lt;/a&gt; opportunity.Billerica MA.Project started few weeks ago.Please RT or contact me with questions &lt;a target="_blank" href="https://search.twitter.com/search?q=%23job"&gt;#job&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/353" target="_blank"&gt;Groovy/Grails Developer (Contract) in Boston, MA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Grails-Boston/boards/view/viewthread?thread=17399692" target="_blank"&gt;Groovy/Grails Contract Opportunity in Boston&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/VMwareCareers/status/131424431636615169" target="_blank"&gt;@VMwareCareers&lt;/a&gt;: The &lt;a target="_blank" href="https://twitter.com/#!/CloudFoundry"&gt;@CloudFoundry&lt;/a&gt; team &lt;a target="_blank" href="https://twitter.com/#!/VMware"&gt;@VMware&lt;/a&gt; is hiring! Check out these new positions that just opened up: &lt;a target="_blank" href="http://t.co/tPSBjFbz"&gt;http://t.co/tPSBjFbz&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23cloudfoundry"&gt;#cloudfoundry&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23uds"&gt;#uds&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23jobs"&gt;#jobs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/355" target="_blank"&gt;Jr. Software Engineer &amp;ndash; Blaine, MN&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/CareersAtDealer/status/131779084358393856" target="_blank"&gt;@CareersAtDealer&lt;/a&gt;: WANTED: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23developers"&gt;#developers&lt;/a&gt;! &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;, &lt;a target="_blank" href="https://search.twitter.com/search?q=%23SpringFramework"&gt;#SpringFramework&lt;/a&gt; &amp;amp; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23MongoDB"&gt;#MongoDB&lt;/a&gt; skills preferred. &lt;a target="_blank" href="https://search.twitter.com/search?q=%23VT"&gt;#VT&lt;/a&gt; &amp;amp; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23CA"&gt;#CA&lt;/a&gt; positions avail. &lt;a target="_blank" href="http://t.co/R2rC80gv"&gt;http://t.co/R2rC80gv&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23careers"&gt;#careers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.cybercoders.com/jobs/java-web-developer-java-spring-grails-mysql-job/crr-jwdgg/?jobid=CRR-JWDGG&amp;amp;posid=CRR-JWDGG" target="_blank"&gt;Java Web Developer in Austin, TX&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.bullhornreach.com/job/105857_javagrails-developer-needed-in-dallas-westlake-tx" target="_blank"&gt; Java/Grails Developer needed in Dallas!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/teiq/status/131618204849143808" target="_blank"&gt;@teiq&lt;/a&gt;: TEIQ is looking for Java developers again, JAXB/JAXWS, Groovy/Grails and maven desired. Contact us teiq.com/contact for more info.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://jobs.qualcomm.com/public/jobDetails.xhtml?requisitionId=1892851&amp;amp;page=jobSearch" target="_blank"&gt;Senior Java Developer at Qualcomm in San Diego, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.emprega.info/VA-39937-emprego-de-Consultor-Java-Grails-Groovy-em-S?o-Paulo-SP" target="_blank"&gt;Consultor Java Grails Groovy &amp;ndash; S?o Paulo-SP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.computrabajo.com.mx/bt-ofrd-rrsoluciones-114368.htm" target="_blank"&gt;Desarrollador Java con grails en Tecamachalco&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.indeed.com/viewjob?t=Cloud+Architect&amp;amp;c=Thompson+Technologies&amp;amp;l=Alpharetta,+GA&amp;amp;jk=d3f46984c15e50dc" target="_blank"&gt;Cloud Architect &amp;ndash; Spring, Grails or Rails in Alpharetta, GA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.myitjobboard.com/ohio-jobs/columbus/sr.-j2ee-developer-using-groovy-and-grails-J3I3G36Q7LC3ZPTFSP1.html" target="_blank"&gt;Sr. J2EE Developer using Groovy &amp;amp; Grails in Columbus, OH&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobview.monster.com/Sr-Web-Developer-Grails-Groovy-Java-Finance-Company-Job-Greenwood-Village-CO-US-103563790.aspx" target="_blank"&gt;Sr. Developer with Grails, Groovy, and Java in Greenwood Village, CO&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobview.monster.co.uk/Java-Web-Developer-Team-Lead-Job-London-London-UK-103592933.aspx" target="_blank"&gt;Java Web Developer / Team Lead, London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/361" target="_blank"&gt;Programmer II at Tower Hill Insurance Group, LLC in Gainesville, FL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/360" target="_blank"&gt;Senior Programmer at Tower Hill Insurance Group, LLC in Gainesville, FL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/362" target="_blank"&gt;Java Programmer (Contract) at Tower Hill Insurance Group, LLC in Gainesville, FL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/devfarmer/status/132463473673240577" target="_blank"&gt;@devfarmer&lt;/a&gt;: Looking for &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; / &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; developer for a some contract work in Columbus Ohio&lt;/li&gt;
&lt;li&gt;&lt;a href="http://home.empregosti.com/vaga/de/MzQxODM4/Consultor-Java-Grails-Groovy-na-empresa-Unione-Consulting-em-Sao-Paulo-SP" target="_blank"&gt;Vaga Consultor Java/Grails/Groovy, S?o Paulo-SP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/markkelly1/status/132144165579522048" target="_blank"&gt;@markkelly1&lt;/a&gt;: looking for java developers with Groovy on Grails exp &amp;ndash; South Dublin&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.theitjobboard.co.uk/IT-Job/Java-Developer/8360444/en/" target="_blank"&gt;Java Developer in London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.brasilvagas.com/2011/10/desenvolvedor-java-grails-e-groovy-vila-olimpia-sp.html" target="_blank"&gt;Desenvolvedor Java Grails e Groovy &amp;ndash; Vila Ol&amp;iacute;mpia / SP&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Urgent-opening-Groovy-Grails-developer-39757.S.78009788?qid=cb33b5b0-977d-4c6c-9ce0-37399516baf0" target="_blank"&gt;Urgent opening for Groovy &amp;amp; Grails developer for Ahmedabad office&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&amp;amp;discussionID=78134071&amp;amp;gid=76751" target="_blank"&gt;Urgent Need: Java / Oracle Developer in Northern Virginia&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/O-B-is-currently-looking-39757.S.78353753?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=78353753" target="_blank"&gt;O&amp;amp;B is currently looking for Java Developers with Grails &amp;ndash; Philippines&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Groovy-Grails-Developers-Needed-12-39757.S.78328106?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=78328106" target="_blank"&gt;Groovy/Grails Developers Needed-12 Month Contract-Norcross, GA&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://osdc.com.au/" target="_blank"&gt;GR8Conf Australia&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;15&lt;sup&gt;th&lt;/sup&gt; November 2011 in Canberra, Australia&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011" target="_blank"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;December 8&lt;sup&gt;th&lt;/sup&gt; and 9&lt;sup&gt;th&lt;/sup&gt; in London&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/java-161/events/34195342/" target="_blank"&gt;Monday, October 24, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grailsgroup.ch/2011/group-session-oktober-2011/" target="_blank"&gt;Group Session Oktober 2011 &amp;ndash; Donnerstag 27.10.2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Grails Group Switzerland&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Seattle-Groovy/events/23595631/" target="_blank"&gt;Thursday, November 10&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;The Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-44%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/bZKTlaKWGQF6i0BAu5LPglK2xzw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bZKTlaKWGQF6i0BAu5LPglK2xzw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/bZKTlaKWGQF6i0BAu5LPglK2xzw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/bZKTlaKWGQF6i0BAu5LPglK2xzw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=lAiiZ9W-6bo:7ugd0Nzkv-k:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=lAiiZ9W-6bo:7ugd0Nzkv-k:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=lAiiZ9W-6bo:7ugd0Nzkv-k:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/lAiiZ9W-6bo" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-44%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 07 Nov 2011 05:19:44 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">545 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-44%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-43）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/T9PMZm8tVIE/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-43%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a title=" This Week in Grails (2011-43)" href="http://burtbeckwith.com/blog/?p=980" rel="bookmark"&gt;This Week in Grails (2011-43)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;本周最大的新闻就是&lt;a href="http://springone2gx.com/conference/chicago/2011/10/home" target="_blank"&gt;在芝加哥的SpringOne 2GX大会&lt;/a&gt;。这是一场有趣的盛会，也是学习Spring和Groovy生态环境技术趋势的好机会，更可以与我们正在用（或者打算使用）的软件的缔造者以及工作中用到这些酷技术的开发者有机会对话。我会在&amp;ldquo;今年的盛会&amp;rdquo;中单独发贴，发布我演讲的幻灯和示例应用。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;我们可以公布新的&lt;a href="http://www.heroku.com/" target="_blank"&gt;Heroku&lt;/a&gt;插件以及Demo了，这是我们和Heroku的伙计们合作的结果。当Heroku宣布支持Java，Tom&amp;aacute;s Lin和Graeme第一时间就能在上面部署Grails应用了，只是过程没插件那么容易，还牵扯到Maven。这个插件会自动配置数据源、Redis、MongoDB、RabbitMQ，甚至是那些使用配置好的Heroku服务的Memcached连接设置，有点象&lt;a href="http://grails.org/plugin/cloud-foundry " target="_blank"&gt;Cloud Foundry&lt;/a&gt;插件，应用几乎零配置。在未来的几周，我们应该有一个合适的版本 &amp;ndash; 这个第一版还是有些问题。&lt;/p&gt;
&lt;p&gt;Jochen &amp;ldquo;blackdrag&amp;rdquo; Theodorou不会写太多博文，但是一旦动笔，都值得一读，本周他的博客上有&lt;em&gt;两篇&lt;/em&gt;博文。可以看看，&lt;a href="http://blackdragsview.blogspot.com/2011/10/feeling-grumpy.html" target="_blank"&gt;感到暴躁么？&lt;/a&gt;和&lt;a href="http://blackdragsview.blogspot.com/2011/10/flow-sensitive-typing.html" target="_blank"&gt;流程敏感的类型转换？&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;请花点时间完成这个调查：&lt;a href="http://www.surveymonkey.com/s/jvm" target="_blank"&gt;JVM语言的Java开发者调查&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Peter Ledbrook本周会就Grails 2.0的新特性召开一个网络研讨会：&lt;a href="http://www.springsource.org/node/3291" target="_blank"&gt;网络研讨会：更好的产品化：Grails 2&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;本周，我们的插件个数越过了700 &amp;ndash; 现在已经有&lt;a href="http://grails.org/plugin/category/all" target="_blank"&gt;701个注册的Grails插件&lt;/a&gt;。&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a target="_blank" href="http://burtbeckwith.com/blog/?cat=32"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a target="_blank" href="http://feeds.feedburner.com/this-week-in-grails"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.vitoria-gasteiz.org/"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://t.co/"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.nabiladouani.fr/"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://mrhaki.blogspot.com/2011/10/groovy-goodness-customize-groovy.html" target="_blank"&gt;Groovy精粹：自定义Groovy Console可视化输出&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://nobeans-en.blogspot.com/2011/10/invoking-groovy-script-directly-on-vim.html" target="_blank"&gt;使用quickrun.vim和GroovyServ在Vim中直接调用Groovy 脚本&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://fbflex.wordpress.com/2011/10/24/six-ways-to-become-a-better-grails-programmer/" target="_blank"&gt;成为Grails编程高手的6种方式&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://mrhaki.blogspot.com/2011/10/grails-goodness-use-different-jquery-ui.html" target="_blank"&gt;Grails精粹：通过Resources插件使用不同的jQuery UI主题&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.johanneslink.net/2011/10/25/simplified-use-of-locks-in-groovy/" target="_blank"&gt;Groovy中锁的简单用法&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.graviti.be/2011/10/why-isnt-groovygrails-use-more-widespread-among-java-developers/" target="_blank"&gt;为什么Groovy/Grails没有在Java开发人员中广泛使用？&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://omarello.com/2010/10/mobile-web-apps-with-jquery-mobile-and-grails/" target="_blank"&gt;使用jQuery mobile和Grails创建移动Web应用&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://aftershox.com/2011/10/30/sizing-up-the-business-perspective-on-groovy-scala-and-other-jvm-languages/" target="_blank"&gt;从企业角度考量Groovy、Scala和其他JVM语言&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://ticetime-blog.blogspot.com/2011/10/gradle-liquibase.html" target="_blank"&gt;Gradle &amp;amp; Liquibase&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.cloudfoundry.com/post/12007504728/cloud-foundry-previews-new-features-at-springone-2gx" target="_blank"&gt;SpringOne 2GX上Cloud Foundry新特性预览&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-10-24" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-24&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-10-25" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-25&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-10-26" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-26&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-10-27" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-27&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-10-28" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-28&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.springsource.org/node/3297" target="_blank"&gt;Spring每周观察：2011年10月25日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周新发布了2个插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/jsbuild" target="_blank"&gt;jsbuild&lt;/a&gt; 1.3.1.8. 作为增加的特性，在Grails中实现了www.devunited.org JsBuild工具；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/oauth-scribe" target="_blank"&gt;oauth-scribe&lt;/a&gt; 1.0. 使用Scribe框架，将oAuth与Grails集成。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有18个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/compass-sass" target="_blank"&gt;compass-sass&lt;/a&gt; 0.5.5. Grails中支持Compass、SASS和SCSS。在run-app时自动编译.scss/.sass，并添加 了其他框架的功能；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/elasticsearch" target="_blank"&gt;elasticsearch&lt;/a&gt; 0.17.8.1. 支持&lt;a target="_blank" href="http://www.elasticsearch.com"&gt;http://www.elasticsearch.com/&lt;/a&gt; RESTful搜索引擎；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/extjs" target="_blank"&gt;extjs&lt;/a&gt; 3.4.0.0. 提供了Ext JS资源；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/extjs4" target="_blank"&gt;extjs4&lt;/a&gt; 4.0.7.0. 提供了Ext JS 4资源；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/gdsflex" target="_blank"&gt;gdsflex&lt;/a&gt; 0.9.0. 使用Granite数据服务（Granite Data Service）进行Grails与Adobe的整合；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/geb" target="_blank"&gt;geb&lt;/a&gt; 0.6.1. Geb适合JVM上无头网页浏览，适合自动化的Web功能测试；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/gsp-resources" target="_blank"&gt;gsp-resources&lt;/a&gt; 0.2.1. 使用resources插件管理静态文件，如main.css.gsp，这样可以对合适的文件动态 构建CSS和JS，而不是在无法缓存的GSP文件中内联这些静态文件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/portlets" target="_blank"&gt;portlets&lt;/a&gt; 0.9.1. 旨在为JSR-168 portlet的开发提供一种简单方式；；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/recurly" target="_blank"&gt;recurly&lt;/a&gt; 0.99. 跟Recurly服务器通信；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/rest" target="_blank"&gt;rest&lt;/a&gt; 0.7. 可使用HTTPBuilder；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/rich-domain" target="_blank"&gt;rich-domain&lt;/a&gt; 1.0.4. 为非Grails domain class的POGO提供了依赖注入；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/ruby" target="_blank"&gt;ruby&lt;/a&gt; 1.0.M3. 通过JRuby在Grails中使用Ruby代码；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-facebook" target="_blank"&gt;spring-security-facebook&lt;/a&gt; 0.2.4. 提供了Facebook的认证，作为Grails Spring Security核心插件的扩展；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-saml" target="_blank"&gt;spring-security-saml&lt;/a&gt; 1.0.0.M4. 给Spring Security插件提供了SAML 2.x支持；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/twitter-bootstrap" target="_blank"&gt;twitter-bootstrap&lt;/a&gt; 1.3.0.11. Twitter Bootstrap CSS框架的资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/webdriver" target="_blank"&gt;webdriver&lt;/a&gt; 0.3.3. 为Grails集成了 Webdriver，可用HtmlUnit或真实的浏览器中进行功能测试；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/xwiki-rendering" target="_blank"&gt;xwiki-rendering&lt;/a&gt; 0.2. 使用XWiki Rendering框架转换文本；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/zkui" target="_blank"&gt;zkui&lt;/a&gt; 0.4. 无缝的将ZK集成到Grails的基础设施；使用 Grails的基础设施，如GSP、controller，而不是使用作为ZKGrails插件。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/ldaley/status/128383340205187072" target="_blank"&gt;@ldaley&lt;/a&gt;：刚好赶上&lt;a target="_blank" href="https://search.twitter.com/search?q=%23s2gx"&gt;#s2gx&lt;/a&gt;, Geb 0.6.1现在可用了 &amp;mdash; &lt;a target="_blank" href="http://t.co/yW32PHYG"&gt;http://t.co/yW32PHYG&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/nagai_masato/status/128388245817012224" target="_blank"&gt;@nagai_masato&lt;/a&gt;：哦，我从来没有注意到GroovyServ会包含在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;的Windows-installer中，因为我从来不用安装器来安装Groovy。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mittie/status/128409102832500736" target="_blank"&gt;@mittie&lt;/a&gt;：一个&lt;a target="_blank" href="https://twitter.com/#!/Canoo"&gt;@Canoo&lt;/a&gt;队友关于我今早展示的一些&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;代码的看法：&amp;ldquo;很难把它跟评论区分开&amp;rdquo; &lt;img class="wp-smiley" alt=";-)" src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_wink.gif" /&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/hwstrbk/status/128470087018622976" target="_blank"&gt;@hwstrbk&lt;/a&gt;：正在准备Real-world &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;上的演讲，11月3日 @ Dutchworks （原先在Jteam）。免费注册：&lt;a target="_blank" href="http://t.co/ZH0ykx01"&gt;http://t.co/ZH0ykx01&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/rossobarricato/status/129127085112430592" target="_blank"&gt;@rossobarricato&lt;/a&gt;：嗯&amp;hellip; 新的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23LSE"&gt;#LSE&lt;/a&gt;站点部分是&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;构建的， &lt;a target="_blank" href="http://t.co/oJLwYuAE"&gt;http://t.co/oJLwYuAE&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/seb_grant/status/129167236974903296" target="_blank"&gt;@seb_grant&lt;/a&gt;：我应当提醒一下：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Nokia"&gt;#Nokia&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Lumia"&gt;#Lumia&lt;/a&gt; 全球Facebook活动是由我们基于&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;的社会化媒体营销平台提供服务的 &lt;a target="_blank" href="https://search.twitter.com/search?q=%23GrailsRocks"&gt;#GrailsRocks&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/ColinHarrington/status/129233890966634497" target="_blank"&gt;@ColinHarrington&lt;/a&gt;：正在为Grails 2.0 (RC1)进行文档更新测试&lt;a target="_blank" href="http://t.co/t3jaLg5S"&gt;http://t.co/t3jaLg5S&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23s12gx"&gt;#s12gx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/aalmiray/status/129235431366729728" target="_blank"&gt;@aalmiray&lt;/a&gt;：AST transformations终于出现到了&lt;a target="_blank" href="https://twitter.com/#!/graemerocher"&gt;@graemerocher&lt;/a&gt;的Grails 2.0的演讲里面。这样大大感谢&lt;a target="_blank" href="https://twitter.com/#!/smaldini"&gt;@smaldini&lt;/a&gt;在这一领域的辛勤工作&lt;a target="_blank" href="https://search.twitter.com/search?q=%23s12gx"&gt;#s12gx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/daveklein/status/129242239959441408" target="_blank"&gt;@daveklein&lt;/a&gt;：Grails 2.0  &amp;ndash; 它改变了一切 &amp;hellip; 再次！  &lt;a target="_blank" href="https://search.twitter.com/search?q=%23SpringOneGroovyGrailsExperienceConference2011Impl"&gt;#SpringOneGroovyGrailsExperienceConference2011Impl&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23s12gx"&gt;#s12gx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/csantoroTechie/status/129265853727379456" target="_blank"&gt;@csantoroTechie&lt;/a&gt;：期待已久的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23heroku"&gt;#heroku&lt;/a&gt;插件，在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23SpringOne"&gt;#SpringOne&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23s12gx"&gt;#s12gx&lt;/a&gt;上公布了。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/ColinHarrington/status/129618793092755457" target="_blank"&gt;@ColinHarrington&lt;/a&gt;：Grails测试小抄 &lt;a target="_blank" href="http://t.co/qaQS6ZJB"&gt;http://t.co/qaQS6ZJB&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23s12gx"&gt;#s12gx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/divideby0/status/129962426782330880" target="_blank"&gt;@divideby0&lt;/a&gt;：Grails测试小抄&lt;a target="_blank" href="http://t.co/mIgXDYkB"&gt;http://t.co/mIgXDYkB&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23s2gx"&gt;#s2gx&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23s12gx"&gt;#s12gx&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/ColinHarrington"&gt;@ColinHarrington&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mittie/status/130046381388873728" target="_blank"&gt;@mittie&lt;/a&gt;：一些会议会给你留下无尽的灵感。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23s12gx"&gt;#s12gx&lt;/a&gt;亦是如此。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0" target="_blank"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails" target="_blank"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails" target="_blank"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/SpringSourceJob" target="_blank"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/search?q=springsource" target="_blank"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/rajivnarula/status/128535452956360705" target="_blank"&gt;@rajivnarula&lt;/a&gt;: We are looking to hire a full-time &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; developer. Billerica MA.Please RT or contact me for details.&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/sebi2706/status/128586047721451520" target="_blank"&gt;@sebi2706&lt;/a&gt;: If you are a good software engineer who wants to work on the french riviera &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23sex"&gt;#sex&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23and"&gt;#and&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23sun"&gt;#sun&lt;/a&gt; contact me, we need people&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/xfpx/status/128770437952978944" target="_blank"&gt;@xfpx&lt;/a&gt;: I&amp;rsquo;m looking for a &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; rockstar to join an exciting cutting-edge startup. Office home-based. &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Job"&gt;#Job&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=101&amp;amp;dockey=xml/1/c/1c194c13e161403030687df31f70c53d@endecaindex" target="_blank"&gt;Cloud Architect &amp;ndash; Spring, Grails or Rails in Alpharetta, GA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/schmuhl/status/130044892025073664" target="_blank"&gt;@schmuhl&lt;/a&gt;: We&amp;rsquo;re hiring at Adaptive Computing &amp;ndash; HTML/CSS and Grails guys. Let me know if you are interested! &lt;a target="_blank" href="http://t.co/FuaOGta0"&gt;http://t.co/FuaOGta0&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/jobs?viewJob=&amp;amp;jobId=2106007" target="_blank"&gt;Lead Solution Developer at Chelab Laboratories in Venice, Italy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.eurojobs.com/en/candidate/jobs/175328.html" target="_blank"&gt;Groovy &amp;amp; Grails Developer &amp;ndash; Groningen, Netherlands&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.harveynash.com/uk/hnit/jobs/details.asp?jobid=1400078&amp;amp;Sourceapply=14" target="_blank"&gt;Grails Developer in London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://phpforum.de/jobboerse/jobangebote/php-jobs/senior-grails-developer-mw.html" target="_blank"&gt;Senior Grails Developer in Germany&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/exensio/status/129867686397231105" target="_blank"&gt;@exensio&lt;/a&gt;: Wir suchen IT Berater (w/m) mit hohem *PZU-Faktor &lt;a target="_blank" href="http://t.co/d9gHnVvZ"&gt;http://t.co/d9gHnVvZ&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23ka"&gt;#ka&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23karlsruhe"&gt;#karlsruhe&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23job"&gt;#job&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/349" target="_blank"&gt;Java &amp;amp; Grails developer &amp;ndash; Berlin&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/I-am-seeking-fulltime-JAVA-67067.S.77834800?view=&amp;amp;gid=67067&amp;amp;type=member&amp;amp;item=77834800" target="_blank"&gt;Java Developer with Grails experience or a desire to work with Groovy &amp;ndash; New York City and San Francisco&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.infotechjobsnow.com/massachusetts-jobs/cambridge/javaj2ee-developer-with-groovygrails-J3H3ZJ675QN59Y587T1.html" target="_blank"&gt;Java/J2EE Developer with Groovy/Grails in Cambridge, MA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/MisterUnsy/status/128749436590493697" target="_blank"&gt;@MisterUnsy&lt;/a&gt;: Looking for free-thinking Web developers in Kent with  Ruby/PHP/Grails/Mobile skills. Pathfinders, groundbreakers and adventurers welcome&amp;hellip;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/xfpx/status/128770437952978944" target="_blank"&gt;@xfpx&lt;/a&gt;: I&amp;rsquo;m looking for a &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; rockstar to join an exciting cutting-edge startup. Office home-based. &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Job"&gt;#Job&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://hire.jobvite.com/Jobvite/jobvite.aspx?b=nVWt5hwb" target="_blank"&gt;Senior Grails Developer in Cupertino, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.universobit.com.ar/aplicantes/empleo.ngmf?IDPOST=18917310&amp;amp;DEEMP=1" target="_blank"&gt;Java Development Leader &amp;ndash; Argentina, CABA, Villa Urquiza&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://greach.es/" target="_blank"&gt;Greach&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;4 de Noviembre de 2011 en Madrid&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://osdc.com.au/" target="_blank"&gt;GR8Conf Australia&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;15&lt;sup&gt;th&lt;/sup&gt; November 2011 in Canberra, Australia&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011" target="_blank"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;December 8&lt;sup&gt;th&lt;/sup&gt; and 9&lt;sup&gt;th&lt;/sup&gt; in London&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/java-161/events/34195342/" target="_blank"&gt;Monday, October 24, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grailsgroup.ch/2011/group-session-oktober-2011/" target="_blank"&gt;Group Session Oktober 2011 &amp;ndash; Donnerstag 27.10.2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Grails Group Switzerland&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Seattle-Groovy/events/23595631/" target="_blank"&gt;Thursday, November 10&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;The Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-43%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/RbTeTrioaAH3si43fbSFo96E5WQ/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RbTeTrioaAH3si43fbSFo96E5WQ/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/RbTeTrioaAH3si43fbSFo96E5WQ/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/RbTeTrioaAH3si43fbSFo96E5WQ/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=T9PMZm8tVIE:z1RgfNXS1A8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=T9PMZm8tVIE:z1RgfNXS1A8:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=T9PMZm8tVIE:z1RgfNXS1A8:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/T9PMZm8tVIE" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-43%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 31 Oct 2011 08:23:25 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">544 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-43%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-42）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/vGlG1QzlroA/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-42%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a rel="bookmark" href="http://burtbeckwith.com/blog/?p=966" title=" This Week in Grails (2011-42)"&gt;This Week in Grails (2011-42)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;本周最大的新闻是&lt;a target="_blank" href="http://grails.1312388.n4.nabble.com/Grails-2-0-RC1-Released-td3925605.html"&gt;Grails 2.0 RC1的发布&lt;/a&gt;。目前，所有事情都向着在11月里发布2.0的目标有条不紊的进行着。如果你还没有见识过2.0，一定要升级你的应用体验一下所有的新特性。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;STS 2.8.0也&lt;a target="_blank" href="http://www.springsource.org/node/3287"&gt;在本周发布了&lt;/a&gt;。细节可以查看关于所有新的groovy-eclipse和Grails的特性（包括对Grails 2.0的支持）的文档。&lt;/p&gt;
&lt;p&gt;真不敢相信，&lt;a target="_blank" href="http://springone2gx.com/conference/chicago/2011/10/home"&gt;SpringOne 2GX&lt;/a&gt;已经来了，本周二即将开幕。一周后，就是&lt;a target="_blank" href="http://greach.es/"&gt;Greach&lt;/a&gt;，两周后&lt;a target="_blank" href="http://osdc.com.au/"&gt;GR8Conf澳洲大会&lt;/a&gt;也将登陆，接着三周后，还有&lt;a target="_blank" href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;。有人有幸参与这四个盛会么？&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-events/"&gt;Spring Events&lt;/a&gt;插件为了适应Grails 2.0，本周也进行了更新。如果你正在使用给制品（Domain Class、Controller、Service）添加的&lt;code&gt;publishEvent&lt;/code&gt;方法，所有都能正常工作，但是如果你直接使用&lt;code&gt;applicationEventMulticaster&lt;/code&gt;或&lt;code&gt;eventPublisher&lt;/code&gt; Spring beans，你需要修改下，使用新的&lt;code&gt;asyncApplicationEventMulticaster&lt;/code&gt;和&lt;code&gt;asyncEventPublisher&lt;/code&gt; beans。&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a href="http://burtbeckwith.com/blog/?cat=32" target="_blank"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a href="http://feeds.feedburner.com/this-week-in-grails" target="_blank"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.vitoria-gasteiz.org/" target="_blank"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.groovyq.net/" target="_blank"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://t.co/" target="_blank"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.nabiladouani.fr/" target="_blank"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/content/cloud-foundry-grails-mongodb%E8%BF%B7%E4%BD%A0%E6%89%8B%E5%86%8C"&gt;Cloud Foundry + Grails + MongoDB迷你手册&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://forums.gradle.org/gradle/topics/this_week_in_gradle_2011_42"&gt;Gradle每周观察（2011-42）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://mrhaki.blogspot.com/2011/10/groovy-goodness-run-remote-scripts-via.html"&gt;Groovy精粹：通过URL执行远程脚本&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://refactr.com/blog/2011/10/why-you-should-work-at-refactr/"&gt;为什么你应该在Refactr工作&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://mrhaki.blogspot.com/2011/10/groovy-goodness-format-dates-with.html"&gt;Groovy精粹：使用TimeZone格式化Date&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://mrhaki.blogspot.com/2011/10/groovy-goodness-default-groovy-script.html"&gt;Groovy精粹：缺省的Groovy脚本文件扩展名&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&amp;ldquo;（有了这篇博文，我们的Groovy精粹达到了250篇了）&lt;img src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_wink.gif" alt=";-)" class="wp-smiley" /&gt; &amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.anyware.co.uk/2005/2011/10/21/resources-1-1-1-plugin-released/"&gt;Resources 1.1(.1)插件发布&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.intelligrape.com/blog/2011/10/21/log-sql-in-grails-for-a-piece-of-code/"&gt;通过邮件订阅：查询：在Grails中为一段代码记录SQL日志&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://fbflex.wordpress.com/2011/10/20/job-specs-that-make-your-team-shine-building-a-spec-with-your-development-team/"&gt;让团队耀眼的工作规范：为开发团队制定规范&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://fbflex.wordpress.com/2011/10/21/migrating-from-the-grails-ui-performance-plugin-to-resources-plugin/"&gt;从Grails UI-performance插件迁移到resources插件&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.jroller.com/aalmiray/entry/griffon_hanging_by_a_thread"&gt;Griffon：被一个线程挂起&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-10-17"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-17&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-10-19"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-19&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-10-20"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-20&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-10-21"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-21&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.springsource.org/node/3288"&gt;Spring每周观察，2011年10月18日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周发布了2个新插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-facebook"&gt;spring-security-facebook&lt;/a&gt; 0.2.3. Facebook认证插件，作为Grails Spring Security核心插件的扩展；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/rich-domain"&gt;rich-domain&lt;/a&gt; 0.1. 为非Grails domain class的POGO提供了依赖注入。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有20个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/bean-fields"&gt;bean-fields&lt;/a&gt; 1.0.RC5. 为Domain和Command对象提供一套渲染表单域的标签；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/cloud-bees"&gt;cloud-bees&lt;/a&gt; 0.1.2. 为集成CloudBees客户端API， 添加了脚本；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/compass-sass"&gt;compass-sass&lt;/a&gt; 0.5.1. Grails中支持Compass、SASS和SCSS。在run-app时自动编译.scss/.sass，并添加 了其他框架的功能；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/grails-ui"&gt;grails-ui&lt;/a&gt; 1.2.1. 为使用YUI的ajaxy组件提供了标准的UI；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/gsp-resources"&gt;gsp-resources&lt;/a&gt; 0.2. 使用resources插件管理静态文件，如main.css.gsp，这样可以对合适的文件动态构建CSS和JS，而不是在无法缓存的GSP文件中内联这些静态文件；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/jesque-web"&gt;jesque-web&lt;/a&gt; 0.12. 查看和管理jesque队列、任务 和工作者的Web接口；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/mongodb"&gt;mongodb&lt;/a&gt; 1.0.0.RC1. 用于在MongoDB之上提供一个对象映射层；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/mongodb-morphia"&gt;mongodb-morphia&lt;/a&gt; 0.7.5. 基于Morphia的另 一种MongoDB GORM（之前是gorm-mongodb）；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/navigation"&gt;navigation&lt;/a&gt; 1.3.2. 使用惯例实现简单的菜单导航&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/new-doc"&gt;new-doc&lt;/a&gt; 0.3.0. 为Grails 2.0.x的Doc命令中额外功能提供了反向移植;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/proxool"&gt;proxool&lt;/a&gt; 0.3. Proxool jdbc连接池插件；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/resources"&gt;resources&lt;/a&gt; 1.1.1. 资源管理和处理的框架；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/screencasts"&gt;screencasts&lt;/a&gt; 0.5.4. 提供了对于视频的上传、 管理和显示；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/serializable-session"&gt;serializable-session&lt;/a&gt; 0.4. 强制会话仅接受序列化对象；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-events"&gt;spring-events&lt;/a&gt; 1.2. 为Grails应用提供了Spring应用事件的异步处理；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-core"&gt;spring-security-core&lt;/a&gt; 1.2.4. 官方Grails安全插件：集成了Spring Security；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-security-saml"&gt;spring-security-saml&lt;/a&gt; 1.0.0.M3. 给Spring Security插件提供了SAML 2.x支持；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/twitter-bootstrap"&gt;twitter-bootstrap&lt;/a&gt; 1.3.0.9. Twitter Bootstrap CSS框架的资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/zk"&gt;zk&lt;/a&gt; 1.0.6. 为Grails应用程序添加ZK Ajax框架（www.zkoss.org）；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/zk-ee"&gt;zk-ee&lt;/a&gt; 1.0.6. ZK插件的企业版本。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/pmcneil/status/126136280106008576"&gt;@pmcneil&lt;/a&gt;：记住，&lt;a target="_blank" href="https://search.twitter.com/search?q=%23gr8conf"&gt;#gr8conf&lt;/a&gt; AU大会论文征集现已开始！&lt;a target="_blank" href="http://t.co/Fhpfflsx"&gt;http://t.co/Fhpfflsx&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23gradle"&gt;#gradle&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23osdc2011"&gt;#osdc2011&lt;/a&gt; cc &lt;a target="_blank" href="https://twitter.com/#!/gr8conf"&gt;@gr8conf&lt;/a&gt; &lt;a target="_blank" href="https://twitter.com/#!/osdc2011"&gt;@osdc2011&lt;/a&gt; so extract&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/martinlippert/status/126250547513786369"&gt;@martinlippert&lt;/a&gt;：刚发布了&lt;a target="_blank" href="https://search.twitter.com/search?q=%23sts"&gt;#sts&lt;/a&gt; 2.8.0，包括对Spring 3.1 profile、c-namespace、&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; 1.8.2、&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; 2.0.0.M2的支持：&lt;a target="_blank" href="http://t.co/RXz6dV2g"&gt;http://t.co/RXz6dV2g&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/andy_clement/status/126348804185276416"&gt;@andy_clement&lt;/a&gt;：忘说了&amp;hellip; 最新的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23eclipse"&gt;#eclipse&lt;/a&gt;开发构建现在包含了Groovy 1.8.3&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/CedricChampeau/status/126392344466558978"&gt;@CedricChampeau&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;静态类型检查进展良好&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/pniederw/status/126562125974994944"&gt;@pniederw&lt;/a&gt;: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23gradle"&gt;#gradle&lt;/a&gt;的主分支现在采用了&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; 1.8。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/javazquez/status/127142641308672000"&gt;@javazquez&lt;/a&gt;：哦，&amp;ldquo;如何删除一个父类的所有子类&amp;rdquo;，讨论Grails Domain Class的hasmany关系时，总是遇到这个问题。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23spreadOperator"&gt;#spreadOperator&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/aalmiray/status/127393745577590784"&gt;@aalmiray&lt;/a&gt;：Griffon 0.9.4发布了 &lt;a target="_blank" href="http://t.co/etRuIVVR"&gt;http://t.co/etRuIVVR&lt;/a&gt; 早投票，多投票 &lt;img src="http://burtbeckwith.com/blog/wp-includes/images/smilies/icon_smile.gif" alt=":-)" class="wp-smiley" /&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/marcoVermeulen/status/127856961365618688"&gt;@marcoVermeulen&lt;/a&gt;：刚发现&lt;a target="_blank" href="https://search.twitter.com/search?q=%23jsoup"&gt;#jsoup&lt;/a&gt;可用于Web领域。超级简单！支持类似jQuery的选择器语法，跟&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; 配合的也很好。&lt;a target="_blank" href="http://t.co/0SEtijrs"&gt;http://t.co/0SEtijrs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tyama/status/128032456900231169"&gt;@tyama&lt;/a&gt;: grails日本語ドキュメントtypo報告のサイト。デザイン変えた。 &lt;a target="_blank" href="http://t.co/c8SXxYyG"&gt;http://t.co/c8SXxYyG&lt;/a&gt; やっぱユーザー登録とかほしいな。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/SpringSourceJob"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobs.vmware.com/search?q=springsource"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tahmed/status/125780108404469760"&gt;@tahmed&lt;/a&gt;: Freelance &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; developers wanted. Ping me.&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/345"&gt;Grails Instrutor &amp;ndash; Geneva Switzerland&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tomaslin/status/126351286298873856"&gt;@tomaslin&lt;/a&gt;: Gotten about 4 emails from random recruiters about working at Sky now. Apparently they&amp;rsquo;re hiring 70 new Grails perm devs.&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobview.monster.com/Java-Web-Developer-Java-Spring-Grails-MySQL-Job-Austin-TX-US-103274756.aspx"&gt;Java Web Developer in Austin, TX&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/348"&gt;Junior Grails Developer at Secret Escapes in London (contract)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/347"&gt;Grails UI Engineer (contract)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/346"&gt;Software-Entwickler, Karlsruhe, Germany&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Grails-Boston/boards/view/viewthread?thread=17062482"&gt;Java/Groovy/Grails permanent position available &amp;ndash; Boston&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.bullhornreach.com/job/105857_javagrails-developer-needed-in-dallas-westlake-tx"&gt;Java/Grails Developer needed in Dallas!&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tomaslin/status/126966430859141120"&gt;@tomaslin&lt;/a&gt;: We&amp;rsquo;re hiring a Junior Graphic Designer and a Junior Grails Developer at Secret Escapes! Check out new job postings -&amp;gt; &lt;a target="_blank" href="http://t.co/AbhHRumc"&gt;http://t.co/AbhHRumc&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.jobserve.us/Groovy-Grails-Developer-Independence-OH-Contract-WAB67918D8B35363B.jsjob"&gt;Groovy/Grails Developer in Independence, OH&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/juamee/status/126705636267393025"&gt;@juamee&lt;/a&gt;: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23job"&gt;#job&lt;/a&gt; Startup avec des moyens nous cherchons un dev pour bosser sur l&amp;rsquo;IHM (HTML,javascript) avec un backend Grails : contactez moi. Plz RT&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/twcrone/status/127844282739601408"&gt;@twcrone&lt;/a&gt;: We just released 1.0 and one of our devs moved on. Looking for a &lt;a target="_blank" href="https://search.twitter.com/search?q=%23javascript"&gt;#javascript&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; developer for Cloud project at Lexmark.&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/plinesch/status/127492923641184256"&gt;@plinesch&lt;/a&gt;: WorthPoint is looking for Grails developers &amp;amp; System Admin among others. &lt;a target="_blank" href="https://search.twitter.com/search?q=%23TCOH"&gt;#TCOH&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/techconnectohio/status/127468137087123456"&gt;@techconnectohio&lt;/a&gt;: Listening to &lt;a target="_blank" href="https://twitter.com/#!/ProgressiveMed"&gt;@ProgressiveMed&lt;/a&gt; they are looking for java groovy and grails talent to move off of legacy systems &lt;a target="_blank" href="http://t.co/XedRz4Sl"&gt;http://t.co/XedRz4Sl&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23TCOH"&gt;#TCOH&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.irishtechjobs.net/2011/07/senior-java-developer-with-groovy.html"&gt;Senior Java Developer in Dublin or Galway, Ireland&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://matchfwd.com/opportunities/java-groovy-grails-developer-in-montreal-quebec"&gt;Java / Groovy Grails Developer at Hibe in Montr&amp;eacute;al, Qu&amp;eacute;bec&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=302&amp;amp;dockey=xml/d/0/d0bfc1d040d09281309eae19a0967396@endecaindex&amp;amp;source=19"&gt;Java Developer with Grails in Charlotte, NC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/kanhaic/status/128010609253040128"&gt;@kanhaic&lt;/a&gt;: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23need"&gt;#need&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23developer"&gt;#developer&lt;/a&gt; with strong &lt;a target="_blank" href="https://search.twitter.com/search?q=%23html"&gt;#html&lt;/a&gt; and &lt;a target="_blank" href="https://search.twitter.com/search?q=%23css"&gt;#css&lt;/a&gt; experience. needs to work on multiple &lt;a target="_blank" href="https://search.twitter.com/search?q=%23website"&gt;#website&lt;/a&gt;. &lt;a target="_blank" href="https://search.twitter.com/search?q=%23permanent"&gt;#permanent&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23job"&gt;#job&lt;/a&gt; at &lt;a target="_blank" href="https://search.twitter.com/search?q=%23streetlightsoftware"&gt;#streetlightsoftware&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.jobserve.us/Groovy-Grails-Developer-Independence-OH-Contract-WAB67918D8B35363B.jsjob"&gt;Java Developer with Groovy/Grails &amp;ndash; Columbus, OH&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://springone2gx.com/conference/chicago/2011/10/home"&gt;SpringOne 2GX 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;October 25&lt;sup&gt;th&lt;/sup&gt;-28&lt;sup&gt;th&lt;/sup&gt; in Chicago, IL&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://greach.es/"&gt;Greach&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;4 de Noviembre de 2011 en Madrid&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://osdc.com.au/"&gt;GR8Conf Australia&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;15&lt;sup&gt;th&lt;/sup&gt; November 2011 in Canberra, Australia&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;December 8&lt;sup&gt;th&lt;/sup&gt; and 9&lt;sup&gt;th&lt;/sup&gt; in London&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/java-161/events/34195342/"&gt;Monday, October 24, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Seattle-Groovy/events/23595631/"&gt;Thursday, November 10&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;The Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-42%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/1Lrw8K_QZmF_E5KSCkfoS8ZDWik/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1Lrw8K_QZmF_E5KSCkfoS8ZDWik/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/1Lrw8K_QZmF_E5KSCkfoS8ZDWik/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/1Lrw8K_QZmF_E5KSCkfoS8ZDWik/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=vGlG1QzlroA:Ztv2KVcjVKY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=vGlG1QzlroA:Ztv2KVcjVKY:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=vGlG1QzlroA:Ztv2KVcjVKY:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/vGlG1QzlroA" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-42%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/13">Griffon</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/10">IDE</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 24 Oct 2011 07:07:41 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">541 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-42%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-41）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/frIbVUCdOGM/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-41%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a title=" This Week in Grails (2011-41)" href="http://burtbeckwith.com/blog/?p=961" rel="bookmark"&gt;This Week in Grails (2011-41)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;本周，我发布了&lt;a href="http://grails.org/plugin/atomikos" target="_blank"&gt;atomikos插件&lt;/a&gt;的初级版本。这项随Grails 2.0中新增的&lt;a href="http://grails.org/doc/2.0.0.M2/guide/conf.html#multipleDatasources" target="_blank"&gt;多数据源支持&lt;/a&gt;而来的插件（应该也适用于&lt;a href="http://grails.org/plugin/datasources" target="_blank"&gt;datasources&lt;/a&gt;插件，但我还没有测试过）提供了JDBC和JMS的两阶段提交的功能。&lt;a href="http://grails-plugins.github.com/grails-atomikos/" target="_blank"&gt;这篇文档&lt;/a&gt;讲述了具体用法，并包含了一个涉及多数据库和结合数据库调用及JMS消息发送的通用教程。巧合的是，本周还有篇类似的有趣博文：&lt;a href="https://leanjavaengineering.wordpress.com/2011/10/12/using-jms-in-grails/" target="_blank"&gt;在Grails中使用JMS&lt;/a&gt;。&lt;/p&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;p&gt;Groovy团队于本周发布了1.8.3和1.9的beta 4版。要了解这两个版本的新内容，请查看&lt;a href="https://glaforge.appspot.com/article/groovy-1-8-3-and-1-9-beta-4-released" target="_blank"&gt;Guillaume的博文&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;你住在西雅图附近吗？你是否有9个朋友熟悉Grails？太幸运了&amp;ndash; 那里有家公司正在找10位（！）Grails开发人员&amp;ndash; 欲知详情，参见工作部分的内容。&lt;/p&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a target="_blank" href="http://burtbeckwith.com/blog/?cat=32"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a target="_blank" href="http://feeds.feedburner.com/this-week-in-grails"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.vitoria-gasteiz.org/"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://t.co/"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.nabiladouani.fr/"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blog.springsource.com/2011/10/12/spring-framework-3-1-rc1-released/" target="_blank"&gt;Spring Framework 3.1 RC1发布啦&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jworks.nl/2011/10/14/this-week-in-discobot-40-2011/" target="_blank"&gt;Discobot每周观察（2011.40）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://sysgears.com/articles/speedup-json-parsing-grails" target="_blank"&gt;在Grails中加速JSON解析&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://nagaimasato.blogspot.com/2011/10/way-to-write-groovys-ast-easily.html" target="_blank"&gt;编写Groovy AST的简单方法&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.bobbywarner.com/2011/10/14/grails-on-aws/" target="_blank"&gt;在AWS上运行Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://naleid.com/blog/2011/10/13/better-grails-batch-import-performance-with-redis-and-jesque/" target="_blank"&gt;使用Redis和Jesque优化Grails批量导入的性能&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://steveloughran.blogspot.com/2011/10/hadoop-work-in-new-api-in-groovy.html" target="_blank"&gt;用Groovy中新API完成Hadoop任务&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blog.armbruster-it.de/2011/10/project-setup-for-grails-with-customized-plugins-using-git-submodules/" target="_blank"&gt;使用Git子模块安装含自定义插件的Grails工程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.dzone.com/links/r/grails_cloud_foundry_cheat_sheet.html" target="_blank"&gt;Grails：Cloud Foundry小抄&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-10-10" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-10&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-10-11" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-11&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-10-12" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-12&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-10-13" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-13&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://observatoriodegrails.com/hoy/?date=2011-10-14" target="_blank"&gt;http://observatoriodegrails.com/hoy/?date=2011-10-14&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.springsource.org/node/3278" target="_blank"&gt;Spring每周观察，2011年10月11日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周发布了6个新插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/atomikos" target="_blank"&gt;atomikos&lt;/a&gt; 1.0. 集成了Atomikos TransactionsEssentials，支持JDBC和JMD事务的两阶段提交；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/cdn-resources" target="_blank"&gt;cdn-resources&lt;/a&gt; 0.2. 用利用了Resources插件框架的内容交付网络装入静态资源；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/cxf-client" target="_blank"&gt;cxf-client&lt;/a&gt; 1.0. 使用现有（或新的）Apache CXF wsdl2java生成的内容调用SOAP服务；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/random-test-order" target="_blank"&gt;random-test-order&lt;/a&gt; 0.2. 随机运行单元、集成和功能测试；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/scorm" target="_blank"&gt;scorm&lt;/a&gt; 0.2. 添加了SCORM的阅读能力；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/gsp-resources" target="_blank"&gt;gsp-resources&lt;/a&gt; 0.1. 使用resources插件管理静态文件，如main.css.gsp，这样可以对合适的文件动态构建CSS和JS，而不是在无法缓存的GSP文件中内联这些静态文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有17个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/compass-sass" target="_blank"&gt;compass-sass&lt;/a&gt; 0.5. Grails中支持Compass、SASS和SCSS。在run-app时自动编译.scss/.sass，并添加 了其他框架的功能；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/date-formatting" target="_blank"&gt;date-formatting&lt;/a&gt; 0.2.2. 为Date对象添加了转换成不同字符串格式的功能；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/email-confirmation" target="_blank"&gt;email-confirmation&lt;/a&gt; 1.0.5. 给用户发送一封带有链接的邮件，单击该链接可以确认站点注册；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/external-config-reload" target="_blank"&gt;external-config-reload&lt;/a&gt; 0.4.7. 轮询检测外部配置文件的变化（添加到grails.config.locations中的文件），当发现改变时，重新装入配置，并触发onConfigChange事件通知插件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/file-viewer" target="_blank"&gt;file-viewer&lt;/a&gt; 0.2. 为查看文件夹和文件提供了用户友好的方式；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/flyingcow" target="_blank"&gt;flyingcow&lt;/a&gt; 1.0. Fork of the ui-performance plugin with some enhancements&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/fsm" target="_blank"&gt;fsm&lt;/a&gt; 0.6.6. 有限状态机行为；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/google-visualization" target="_blank"&gt;google-visualization&lt;/a&gt; 0.3. 为 Google Visualization API的交互图片提供标签库；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/grails-melody" target="_blank"&gt;grails-melody&lt;/a&gt; 1.9. 集成了JavaMelody系统监视工具;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/jquery-mobile" target="_blank"&gt;jquery-mobile&lt;/a&gt; 0.2. 提供了 jQuery mobile框架的资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/mongodb-morphia" target="_blank"&gt;mongodb-morphia&lt;/a&gt; 0.7.4. 基于Morphia的另一种MongoDB GORM（之前是gorm-mongodb）；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/mongodb-multitenant" target="_blank"&gt;mongodb-multitenant&lt;/a&gt; 0.2.2.6-BETA. 提供了针对MongoDB的多租户特性；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/portlets" target="_blank"&gt;portlets&lt;/a&gt; 0.9. 旨在为JSR-168 portlet的开发提供一种简单方式；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/portlets-liferay" target="_blank"&gt;portlets-liferay&lt;/a&gt; 0.4. 可使用Portlets插件，并添加了Liferay Portal特定配置和适配器；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-core" target="_blank"&gt;spring-security-core&lt;/a&gt; 1.2.3. 官方Grails安全插件：集成了Spring Security；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/spring-security-twitter" target="_blank"&gt;spring-security-twitter&lt;/a&gt; 0.3.3. Twitter认证，作为Spring Security Core插件的扩展；&lt;/li&gt;
&lt;li&gt;&lt;a href="http://grails.org/plugin/twitter-bootstrap" target="_blank"&gt;twitter-bootstrap&lt;/a&gt; 1.3.0.8. Twitter Bootstrap CSS框架资源文件。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/alvaro_sanchez/status/123330834408284160" target="_blank"&gt;@alvaro_sanchez&lt;/a&gt;：我们在马德里需要很多的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;/&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;人员。你认识对&lt;a target="_blank" href="https://search.twitter.com/search?q=%23barcampes"&gt;#barcampes&lt;/a&gt;感兴趣的人么？&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/osoco/status/123356799855374337" target="_blank"&gt;@osoco&lt;/a&gt;: BKOOL交通视频：&amp;ldquo;BKOOL服务器奋战在AWS上，并日夜不眠&amp;hellip;&amp;rdquo; &lt;a target="_blank" href="http://t.co/TcCRlUK7"&gt;http://t.co/TcCRlUK7&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23bkool"&gt;#bkool&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/kiy0taka/status/123359791664992257" target="_blank"&gt;@kiy0taka&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23JenkinsCI"&gt;#JenkinsCI&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;插件1.5版本发布了。支持Grails自动安装！&lt;a target="_blank" href="http://t.co/3Qoe6Ib1"&gt;http://t.co/3Qoe6Ib1&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/greach_es/status/123377719017881600" target="_blank"&gt;@greach_es&lt;/a&gt;：&lt;a target="_blank" href="https://twitter.com/#!/glaforge"&gt;@glaforge&lt;/a&gt;的开放访谈以及Greach的与会者&lt;a target="_blank" href="http://t.co/jwTqjyjN"&gt;http://t.co/jwTqjyjN&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23griffon"&gt;#griffon&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/tkeeney/status/123442720005042177" target="_blank"&gt;@tkeeney&lt;/a&gt;：断章取义的每日预报：&amp;ldquo;哦，耶，你可以给G-String放入任何东西！&amp;rdquo; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/nagai_masato/status/123505976371453952" target="_blank"&gt;@nagai_masato&lt;/a&gt;：嗨，groovy伙计们。我写了一个构建器，可以生成AST DSL&lt;a target="_blank" href="http://t.co/gKFPmg0C"&gt;http://t.co/gKFPmg0C&lt;/a&gt; 试试看吧。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/fbricon/status/123553377224359936" target="_blank"&gt;@fbricon&lt;/a&gt;：偶遇&lt;a target="_blank" href="https://twitter.com/#!/derjan"&gt;@derjan&lt;/a&gt;用&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;写的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23eclipse"&gt;#eclipse&lt;/a&gt;插件的完整示例，用&lt;a target="_blank" href="https://search.twitter.com/search?q=%23tycho"&gt;#tycho&lt;/a&gt;构建的：&lt;a target="_blank" href="http://t.co/2otBVVwD"&gt;http://t.co/2otBVVwD&lt;/a&gt; 很酷！&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/cincyggug/status/123775695615832064" target="_blank"&gt;@cincyggug&lt;/a&gt;: &lt;a target="_blank" href="https://twitter.com/#!/pledbrook"&gt;@pledbrook&lt;/a&gt; 辛辛那提的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;亲们都在哪儿啊？我们想在10月举办一个&amp;ldquo;联谊会&amp;rdquo;。如何兑现？&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/chanwit/status/123794093208903680" target="_blank"&gt;@chanwit&lt;/a&gt;：泰国的i18n已经为&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; 2.0准备就绪。&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/ctoestreich/status/124196880879075328" target="_blank"&gt;@ctoestreich&lt;/a&gt;：Grails Cxf Client插件发布了&amp;hellip; &lt;a target="_blank" href="http://t.co/oofyEQqm"&gt;http://t.co/oofyEQqm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mohamedbraham/status/124408973771292672" target="_blank"&gt;@mohamedbraham&lt;/a&gt;：针对团队的开源时间跟踪Java EE软件：Timejoe，基于Grails框架（Groovy、Spring、Hibernate..）&lt;a target="_blank" href="http://t.co/FZRi5rga"&gt;http://t.co/FZRi5rga&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/sebi2706/status/124576461859471360" target="_blank"&gt;@sebi2706&lt;/a&gt;：嗨，如果下周你在索菲亚附近，法国南部，这儿会有一场奇妙的&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;讨论，关于移动Web应用 &lt;a target="_blank" href="http://t.co/HKXAKcOt"&gt;http://t.co/HKXAKcOt&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/hwstrbk/status/124803262825234432" target="_blank"&gt;@hwstrbk&lt;/a&gt;：我将在&lt;a target="_blank" href="https://twitter.com/#!/dutchworkshq"&gt;@dutchworkshq&lt;/a&gt;技术聚会（原名为JTeam）上有一个题为&amp;lsquo;Real world &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;&amp;lsquo; 的演讲，免费注册：&lt;a target="_blank" href="http://t.co/ZH0ykx01"&gt;http://t.co/ZH0ykx01&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0" target="_blank"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails" target="_blank"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails" target="_blank"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/SpringSourceJob" target="_blank"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/search?q=springsource" target="_blank"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/341" target="_blank"&gt;Grails Programmer (contract) at Loxbridge Research in London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Looking-10-Groovy-Grails-developers-67067.S.74751271?view=&amp;amp;gid=67067&amp;amp;type=member&amp;amp;item=74751271" target="_blank"&gt;Looking for 10 Groovy/Grails developers in Seattle. 6 month contract, possible FTE&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.grailsjobs.com/view-job/342" target="_blank"&gt;Looking for 2-3 Java/Groovy/Grails Developers at jWorks in the Netherlands&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobs.vmware.com/job/Palo-Alto-Open-Source-Release-Engineer-Cloud-Foundry-Job-CA-94301/1290800/" target="_blank"&gt;Open Source Community Software Engineer/Ambassador- Cloud Foundry Job at VMware&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.aplitrak.com/?adid=cmF2ZW5tb250YWx2by44MTkwNC50d2lAdmFjby5hcGxpdHJhay5jb20" target="_blank"&gt;Sr. Java Developer in Florida&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://groups.google.com/forum/#!topic/xrecnet/gTkCyjg8o6c" target="_blank"&gt;Sr. Java / J2EE Developer with Groovy &amp;amp; Grails (contract) in Charlotte, NC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://job-interview.ru/vacancy/437381" target="_blank"&gt;Web-разработчик на Java, Grails &amp;ndash; Москва&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/redShoeTech/status/124995060080181248" target="_blank"&gt;@redShoeTech&lt;/a&gt;: &lt;a target="_blank" href="https://twitter.com/#!/redShoeTech"&gt;@redShoeTech&lt;/a&gt; is seeking Java/J2EE + Grails developers!  Ping us for more information!  &lt;a target="_blank" href="https://search.twitter.com/search?q=%23govcon"&gt;#govcon&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23DC"&gt;#DC&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23j2ee"&gt;#j2ee&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/vivektaneja/status/124995578995277824" target="_blank"&gt;@vivektaneja&lt;/a&gt;: Have Java and Grails experience in the D.C. Metro area? Ping me asap, thanks! &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23j2ee"&gt;#j2ee&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23washington"&gt;#washington&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23DC"&gt;#DC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/CareersAtDealer/status/124896064217157633" target="_blank"&gt;@CareersAtDealer&lt;/a&gt;: WANTED: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23developers"&gt;#developers&lt;/a&gt;! &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;, &lt;a target="_blank" href="https://search.twitter.com/search?q=%23SpringFramework"&gt;#SpringFramework&lt;/a&gt; &amp;amp; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23MongoDB"&gt;#MongoDB&lt;/a&gt; skills preferred. &lt;a target="_blank" href="https://search.twitter.com/search?q=%23VT"&gt;#VT&lt;/a&gt; &amp;amp; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23CA"&gt;#CA&lt;/a&gt; positions avail. &lt;a target="_blank" href="http://t.co/R2rC80gv"&gt;http://t.co/R2rC80gv&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23careers"&gt;#careers&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Looking-Java-Deeloper-Grails-experience-39757.S.74898220?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=74898220" target="_blank"&gt;Looking for a Java Developer with Grails experience for a long term contract in DC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Urgent-opening-java-Grails-Developer-39757.S.74898133?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=74898133" target="_blank"&gt;Urgent opening for the java / Grails Developer, Seattle WA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/Consulting-Opportunities-Start-up-seeks-39757.S.74898003?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=74898003" target="_blank"&gt;Start up seeks Sr Java/Grails designer/developer for Web app dev and another for GUI/Design &amp;ndash; Atlanta&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.linkedin.com/groups/WALTHAM-MA-opening-Senior-Software-39757.S.74897918?view=&amp;amp;gid=39757&amp;amp;type=member&amp;amp;item=74897918" target="_blank"&gt;Senior Software Engineer Java , Ruby, Python or Grails &amp;ndash; Waltham, MA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://twitter.com/#!/mmatook/status/125107108080386048" target="_blank"&gt;@mmatook&lt;/a&gt;: Open &lt;a target="_blank" href="https://search.twitter.com/search?q=%23jobs"&gt;#jobs&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23brisbane"&gt;#brisbane&lt;/a&gt; Full-time Java Developer (Java/Grails) &amp;ndash; Juniors are Welcome &amp;ndash; Ping me for details&lt;/li&gt;
&lt;li&gt;&lt;a href="http://irishtechjobs.blogspot.com/2011/07/senior-java-developer-with-groovy.html" target="_blank"&gt;Senior Java Developer with Groovy Grails &amp;ndash; Galway&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.smartrecruiters.com/CoretexTechnologiesLLC/387679-sr-web-application-developer-java-grails" target="_blank"&gt;Sr. Web Application Developer-Java/Grails &amp;ndash; Norcross, GA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.smartrecruiters.com/CoretexTechnologiesLLC/387672-web-application-developers-java-grails" target="_blank"&gt;Web Application Developers-Java/Grails &amp;ndash; Norcross, GA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jobview.monster.co.uk/Senior-Java-Developer-Job-City-of-London-London-UK-103133791.aspx" target="_blank"&gt;Senior Java Developer &amp;ndash; London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.technojobs.co.uk/job.phtml/709354" target="_blank"&gt;Java Developer with Grails, N.Manchester UK&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.jobmagic.com/job/Groovy-on-Grails-Java-Developer-Job-New-York-City-NY-10017-US-8642508.html" target="_blank"&gt;Grails Developer in NYC&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://springone2gx.com/conference/chicago/2011/10/home" target="_blank"&gt;SpringOne 2GX 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;October 25th-28th in Chicago, IL&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://greach.es/" target="_blank"&gt;Greach&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;4 de Noviembre de 2011 en Madrid&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://osdc.com.au/" target="_blank"&gt;GR8Conf Australia&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;15th November 2011 in Canberra, Australia&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011" target="_blank"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;December 8th and 9th in London&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/london-ggug/events/28863331/" target="_blank"&gt;Betamax and Grails Plugins &amp;ndash; Lessons to learn, Monday, October 17&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;London Groovy &amp;amp; Grails User Group Meetup&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.dcgroovy.org/events/31847342/" target="_blank"&gt;Groovy AST Transformations &amp;ndash; Wednesday, October 19&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Washington DC Area Groovy User Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/java-161/events/34195342/" target="_blank"&gt;Monday, October 24, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.meetup.com/Seattle-Groovy/events/23595631/" target="_blank"&gt;Thursday, November 10&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;The Seattle Groovy/Grails Users Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-41%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/nNiR5ci-aSQjiq7k05LSWZpL0Ug/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nNiR5ci-aSQjiq7k05LSWZpL0Ug/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/nNiR5ci-aSQjiq7k05LSWZpL0Ug/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/nNiR5ci-aSQjiq7k05LSWZpL0Ug/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=frIbVUCdOGM:Buaaz5iZxEc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=frIbVUCdOGM:Buaaz5iZxEc:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=frIbVUCdOGM:Buaaz5iZxEc:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/frIbVUCdOGM" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-41%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/13">Griffon</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/10">IDE</category>
 <category domain="http://www.groovyq.net/taxonomy/term/22">前端开发</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 17 Oct 2011 05:42:04 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">539 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-41%EF%BC%89</feedburner:origLink></item>
<item>
 <title>问： grails doc 生成文档时，出现中文乱码，如何处理</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/b4X5ygIGbtc/grails-doc-%E7%94%9F%E6%88%90%E6%96%87%E6%A1%A3%E6%97%B6%EF%BC%8C%E5%87%BA%E7%8E%B0%E4%B8%AD%E6%96%87%E4%B9%B1%E7%A0%81%EF%BC%8C%E5%A6%82%E4%BD%95%E5%A4%84%E7%90%86</link>
 <description>&lt;a href="http://www.groovyq.net/content/grails-doc-%E7%94%9F%E6%88%90%E6%96%87%E6%A1%A3%E6%97%B6%EF%BC%8C%E5%87%BA%E7%8E%B0%E4%B8%AD%E6%96%87%E4%B9%B1%E7%A0%81%EF%BC%8C%E5%A6%82%E4%BD%95%E5%A4%84%E7%90%86"&gt;请阅读完整问题和解答！&lt;/a&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/GCPl7PrXkIphwMOpkP1TU1bnZOs/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GCPl7PrXkIphwMOpkP1TU1bnZOs/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/GCPl7PrXkIphwMOpkP1TU1bnZOs/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/GCPl7PrXkIphwMOpkP1TU1bnZOs/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=b4X5ygIGbtc:DPdUUL95TDs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=b4X5ygIGbtc:DPdUUL95TDs:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=b4X5ygIGbtc:DPdUUL95TDs:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/b4X5ygIGbtc" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails-doc-%E7%94%9F%E6%88%90%E6%96%87%E6%A1%A3%E6%97%B6%EF%BC%8C%E5%87%BA%E7%8E%B0%E4%B8%AD%E6%96%87%E4%B9%B1%E7%A0%81%EF%BC%8C%E5%A6%82%E4%BD%95%E5%A4%84%E7%90%86#comments</comments>
 <category domain="http://www.groovyq.net/category/%E9%97%AE%E7%AD%94/grails">Grails</category>
 <pubDate>Tue, 11 Oct 2011 00:38:44 +0000</pubDate>
 <dc:creator />
 <guid isPermaLink="false">536 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails-doc-%E7%94%9F%E6%88%90%E6%96%87%E6%A1%A3%E6%97%B6%EF%BC%8C%E5%87%BA%E7%8E%B0%E4%B8%AD%E6%96%87%E4%B9%B1%E7%A0%81%EF%BC%8C%E5%A6%82%E4%BD%95%E5%A4%84%E7%90%86</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-40）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/pLWZAO_UhXk/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-40%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a rel="bookmark" href="http://burtbeckwith.com/blog/?p=951" title=" This Week in Grails (2011-40)"&gt;This Week in Grails (2011-40)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;C&amp;eacute;dric Champeau为&lt;a target="_blank" href="http://docs.codehaus.org/display/GroovyJSR/GEP+8+-+Static+type+checking"&gt;静态类型检查&lt;/a&gt;添加了一个新的Groovy 增强提案(GEP)。用于Groovy一种可选、更严格的 &amp;ldquo;grumpy&amp;rdquo;模式，有点类似Groovy++，在编译时比传统模式能更早的生成警告和错误并反馈给开发人员。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;p&gt;本周发布了不少工作，包括旧金山Taulia的&lt;em&gt;5个&lt;/em&gt;职位。&lt;/p&gt;
&lt;p&gt;SpringOne/2GX仅剩两周多的时间了 &amp;ndash; 它将是本年度另一个盛会。&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a href="http://burtbeckwith.com/blog/?cat=32" target="_blank"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a href="http://feeds.feedburner.com/this-week-in-grails" target="_blank"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.vitoria-gasteiz.org/" target="_blank"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.groovyq.net/" target="_blank"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://t.co/" target="_blank"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.nabiladouani.fr/" target="_blank"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://forums.gradle.org/gradle/topics/this_week_in_gradle_2011_40"&gt;Gradle每周观察（2011-40）&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.tomcatexpert.com/blog/2011/10/04/apache-tomcat-7022-released"&gt;Apache Tomcat 7.0.22发布了&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://joesgroovyblog.blogspot.com/2011/10/ast-transformation-using-astbuilder.html"&gt;AST Transformation：创建复杂的AST Transformation&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://glaforge.appspot.com/article/gr8conf-is-coming-to-australia"&gt;GR8Conf大会即将登陆澳洲&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.gridshore.nl/2011/10/03/cleaning-up-artifactory-with-a-groovy-script/"&gt;清理制品的Groovy脚本&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blog.cloudfoundry.com/post/11063041222"&gt;迷你Cloud Foundry？ &amp;mdash; 现在可以使用PostgreSQL和RabbitMQ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-10-03"&gt;http://observato riodegrails.com/hoy/?date=2011-10-03&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-10-04"&gt;http://observato riodegrails.com/hoy/?date=2011-10-04&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-10-05"&gt;http://observato riodegrails.com/hoy/?date=2011-10-05&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-10-07"&gt;http://observato riodegrails.com/hoy/?date=2011-10-07&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.springsource.org/node/3274"&gt;Spring每周观察，2011年10月4日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周发布了1个新插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/recurly"&gt;recurly&lt;/a&gt; 0.98. 跟Recurly服务器通信。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有13个更新的插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/cloud-foundry"&gt;cloud-foundry&lt;/a&gt; 1.2. 集成了Cloud Foundry的 云部署服务，以便从命令行管理云中运行的Grails应用；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/cloud-support"&gt;cloud-support&lt;/a&gt; 1.0.6. 帮助Cloud插件更新来自于Cloud环境的服务提供商连接信息；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/compass-sass"&gt;compass-sass&lt;/a&gt; 0.4.3. Grails中支持Compass、SASS和SCSS。在run-app时自动编译.scss/.sass，并添加了其他框架的功能；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/dbconsole"&gt;dbconsole&lt;/a&gt; 1.1. 为1.4之前的应用提供基于Web的数据库控制台；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/fsm"&gt;fsm&lt;/a&gt; 0.6.5. 有限状态机行为；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/html-validator"&gt;html-validator&lt;/a&gt; 0.3. 使用JTidy对html文件进行健康检查；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/image-builder"&gt;image-builder&lt;/a&gt; 0.2. 简单的图片构建器；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/new-doc"&gt;new-doc&lt;/a&gt; 0.2.1. 为 Grails 2.0.x的Doc命令中额外功能提供了反向移植&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/sharding"&gt;sharding&lt;/a&gt; 0.6. 定义多个 数据库分区以实现数据横向扩展；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-social-core"&gt;spring-social-core&lt;/a&gt; 0.1.29. 允许你的应用去连接软件即服务（ SaaS）的提供商，比如Facebook和Twitter；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/spring-social-twitter"&gt;spring-social-twitter&lt;/a&gt; 0.1.28. 将你的应用于Twitter连接起来；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/taggable"&gt;taggable&lt;/a&gt; 1.0. 提供了关联标签和Domain class的支持；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/tropo-webapi-grails"&gt;tropo-webapi-grails&lt;/a&gt; 0.2.1. 使用Tropo的Cloud API增加对Phone、SMS和及时消息的支持。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/graemerocher/status/121745369376899072"&gt;@graeme rocher&lt;/a&gt;：我在&lt;a target="_blank" href="https://search.twitter.com/search?q=%23javaone11"&gt;#javaone11&lt;/a&gt;上的演示完全震撼全场。示例应用是一个RSS应用，装入了BBC feed，发现了Steve Jobs。 安息吧！&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/evgeny_goldin/status/120295754605658112"&gt;@evgen y_goldin&lt;/a&gt;：提醒自己：list.findAll{ it } == list.grep()，停止不必要的findAll。 &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/vaclav_pech/status/120782863716188160"&gt;@vaclav_ pech&lt;/a&gt;：叫我偏执狂吧，现在用&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;，我缺省会选择&amp;ldquo;final&amp;rdquo;而不是&amp;ldquo;def&amp;rdquo;。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/javahispano/status/120850359878041601"&gt;@javahis pano&lt;/a&gt;：在结束注册前，预订&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Greach"&gt;#Greach&lt;/a&gt;的门票！&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; &lt;a target="_blank" href="http://ow.ly/6LDfh"&gt;http://ow.ly/6LDfh&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/daveklein/status/120875208478429184"&gt;@daveklein &lt;/a&gt;：一个新的酷工具（基于Grails）可以让你的网络营销更有成效。查看BringShare Beta &amp;ndash; &lt;a target="_blank" href="http://t.co/TvK8d7in"&gt;http://t.co/TvK8d7in&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/werdnagreb/status/120919459471953920"&gt;@werdnagreb&lt;/a&gt;: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;-&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Eclipse"&gt;#Eclipse&lt;/a&gt; 2.5.2发布了：          &lt;br /&gt;
    &lt;a target="_blank" href="http://j.mp/qUjkwZ"&gt;http://j.mp/qUjkwZ&lt;/a&gt;          &lt;br /&gt;
    增强了类型推断，更好的maven支持，还有更多！&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/palge/status/120983626891526144"&gt;@palge&lt;/a&gt;：有人有兴趣在温哥华成立一个Grails用户组么？&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/spidie/status/121111026707079168"&gt;@spidie&lt;/a&gt;: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23gr8conf"&gt;#gr8conf&lt;/a&gt; AU站点已经上线&lt;a target="_blank" href="http://t.co/wAeeqJJQ"&gt;http://t.co/wAeeqJJQ&lt;/a&gt; &amp;ndash; 请提交您的申请。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23gradle"&gt;#gradle&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23osdc2011"&gt;#osdc2011&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/ArturoHerrero/status/121210049971490816"&gt;@ArturoHerrero&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;中，你能做的事情但最好别做的事情 &lt;a target="_blank" href="http://ow.ly/6MRh7"&gt;http://ow.ly/6MRh7&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tomaslin/status/121253527539548161"&gt;@tomaslin&lt;/a&gt;：这儿是一个&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;脚本，允许你使用&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Geb"&gt;#Geb&lt;/a&gt;将你的&lt;a target="_blank" href="https://twitter.com/#!/pivotaltracker"&gt;@pivotaltracker&lt;/a&gt;故事导入到&lt;a target="_blank" href="https://twitter.com/#!/trelloApp"&gt;@trelloApp&lt;/a&gt;面板中 &lt;a target="_blank" href="http://t.co/St8doIsd"&gt;http://t.co/St8doIsd&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/joesondow/status/121300690424446976"&gt;@joesondow &lt;/a&gt;：缺省情况下，Grails 2.0自动创建的测试会失败，记得修改它们。&lt;a target="_blank" href="https://search.twitter.com/search?q=%23javaone11"&gt;#javaone11&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/carlosqt/status/121501753270214656"&gt;@carlosqt&lt;/a&gt;：&lt;a target="_blank" href="https://search.twitter.com/search?q=%23scala"&gt;#scala&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23clojure"&gt;#clojure&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23jython"&gt;#jython&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23jruby"&gt;#jruby&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23jobs"&gt;#jobs&lt;/a&gt;趋势 &lt;a target="_blank" href="http://t.co/ABtPS1XG"&gt;http://t.co/ABtPS1XG&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/toby55kij/status/121576334358102016"&gt;@toby55kij &lt;/a&gt;: ニューキャストが開発、Powered by Grailsなvivicalの滋賀版。運営会社の社長さんがbjリーグ滋芳cn社外取締役。 &lt;a target="_blank" href="http://t.co/Qf508gq9"&gt;http://t.co/Qf508gq9&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23bjleague"&gt;#bjleague&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23bjshiga"&gt;#bjshiga&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tfnico/status/122188951334289408"&gt;@tfnico&lt;/a&gt;: &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;聚会登陆奥斯陆！&lt;a target="_blank" href="http://t.co/Ycl7glHr"&gt;http://t.co/Ycl7glHr&lt;/a&gt; 由&lt;a target="_blank" href="https://twitter.com/#!/akafred"&gt;@akafred&lt;/a&gt;发出&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/carpago/status/122340701311741952"&gt;@carpago&lt;/a&gt;：我想&lt;a target="_blank" href="https://search.twitter.com/search?q=%23sqlmap"&gt;#sqlmap&lt;/a&gt;太强悍了！至少：我的grails应用有所有sql注入证明！好工具！          &lt;br /&gt;
    &lt;a target="_blank" href="http://t.co/OsArIsqy"&gt;http://t.co/OsArIsqy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/ColinHarrington/status/122402080165068800"&gt;@ColinHarrington&lt;/a&gt;：需要用Grails数据库迁移插件生成一个数据变更集么？&amp;lsquo;grails dbm-generate-changelog data.groovy &amp;ndash;diffTypes=data&amp;rsquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/SpringSourceJob"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobs.vmware.com/search?q=springsource"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/epragt/status/120774797247520770"&gt;@epragt&lt;/a&gt;: Is weer op zoek naar enthousiaste &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt; ontwikkelaars die interesse hebben in een project in Noord Nederland! Msg me!&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/333"&gt;Senior Game Developer at Quick Hit (Majesco Entertainment) Foxboro, MA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/334"&gt;Java/Groovy developer &amp;ndash; US-Midwest or Remote&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/BSteylaerts/status/121238529748631552"&gt;@BSteyla erts&lt;/a&gt;: DRINGEND op zoek naar ervaren &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Java"&gt;#Java&lt;/a&gt; developers die zin hebben in een uitdagend project met &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt;/&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt; in Antwerpen! RT=nice&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/340"&gt;Software Engineer Intern at Taulia in San Francisco &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/338"&gt;Software Engineer &amp;ndash; Back End at Taulia in San Francisco&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/339"&gt;Jr. Software Engineer at Taulia in San Francisco&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/337"&gt;Software Engineer &amp;ndash; API Integration at Taulia in San Francisco&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/335"&gt;Software Engineer &amp;ndash; Front End at Taulia in San Francisco&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.london4jobs.co.uk/jobs/details/20030/"&gt;Developer / Team Lead (Grails &amp;amp; Groovy) in Surrey, England&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobs.readwriteweb.com/job/java-developer-with-grails-experience-washington-dc-yoh-c54ebef27a/"&gt;Java Developer with Grails experience in Washington, DC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/eBay-is-hiring-multiple-experienced-1921772.S.74274985?view=&amp;amp;gid=1921772&amp;amp;type=member&amp;amp;item=74274985"&gt;eBay Software Engineer in Austin, TX&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/objectpartners/status/121974826612170752"&gt;@obje ctpartners&lt;/a&gt;: We&amp;rsquo;re hiring additional &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; rock stars. Perfect time to get your foot in the door, and here&amp;rsquo;s why you should &amp;gt;&amp;gt; &lt;a target="_blank" href="http://ht.ly/6PsxF"&gt;http://ht.ly/6PsxF&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/johnnywey/status/122390419198836736"&gt;@johnnywey &lt;/a&gt;: Looking for another awesome engineer to join my team! Scala, Groovy, Grails, Java, NoSQL, and the list goes on. Ping me if you&amp;rsquo;re interested&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/Schmidty71/status/122381736163278848"&gt;@Schmidty 71&lt;/a&gt;: We&amp;rsquo;re hiring &lt;a target="_blank" href="https://search.twitter.com/search?q=%23java"&gt;#java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt; rock stars. Come see why we are a Great Place to Work and made the &lt;a target="_blank" href="https://search.twitter.com/search?q=%23fastest50"&gt;#fastest50&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23mnjobs"&gt;#mnjobs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.jobfox.com/Web/Seeker/Landing/AppJobDetails.aspx?AppJobId=5e711729-f973-46ca-8ca1-3a8a20cf355a"&gt;Senior Grails Developer (contract) at BristleCone in Mountain View, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/Straight12int/status/121973766677995521"&gt;@Strai ght12int&lt;/a&gt;: Snr Java Developer: HTML, CSS, Webservices, JavaScript,+ Groovy &amp;amp; Grails 6 mth role: English essential. Belgium. &lt;a href="mailto:Maria@straigh12.com"&gt;Maria@straigh12.com&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/StaceySloan1/status/121726645718622208"&gt;@Stacey Sloan1&lt;/a&gt;: Looking for Java Developers in Bellevue &amp;ndash; Groovy/Grails, 6 month contract! Your referrals are welcome &amp;ndash; bonuses available.&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=101&amp;amp;dockey=xml/7/0/70c393a9bfcad7afaeadc9049c58ab38@endecaindex"&gt;Java Developer with Groovy/Grails experience in Madison, WI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://job-interview.ru/vacancy/436212"&gt;Java/Groovy/Grails разработчик, Санкт-Петербург&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.ukstaffsearch.com/jobs/details/544532/"&gt;Groovy Grails Developer in London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=302&amp;amp;dockey=xml/0/5/0517bd9bfa86794ac24c7e32f339d609@endecaindex&amp;amp;source=3"&gt;Rockstar Sr. Cloud Software Engineer: Java, Groovy, Spring, Hibernate at Katasoft in San Mateo, CA&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://springone2gx.com/conference/chicago/2011/10/home"&gt;SpringOne 2GX 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;October 25&lt;sup&gt;th&lt;/sup&gt;-28&lt;sup&gt;th&lt;/sup&gt; in Chicago, IL&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://greach.es/"&gt;Greach&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;4 de Noviembre de 2011 en Madrid&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://osdc.com.au/"&gt;GR8Conf Australia&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;15th November 2011 in Canberra, Australia&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;December 8&lt;sup&gt;th&lt;/sup&gt; and 9&lt;sup&gt;th&lt;/sup&gt; in London&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Paris-Groovy-Grails/events/33801072/"&gt;Soir&amp;eacute;e Dans ton Cloud(Foundry) ! avec Peter Ledbrook (VMware/SpringSource) &amp;ndash; Thursday, October 13, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Paris Groovy and Grails User Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.phillygroovy.org/events/35537342/"&gt;Grails Web Flow and 5 jQuery plugins for your Grails app, Thursday, October 13&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Philadelphia Groovy and Grails User Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/london-ggug/events/28863331/"&gt;Betamax and Grails Plugins &amp;ndash; Lessons to learn, Monday, October 17&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;London Groovy &amp;amp; Grails User Group Meetup&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.dcgroovy.org/events/31847342/"&gt;Groovy AST Transformations &amp;ndash; Wednesday, October 19&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Washington DC Area Groovy User Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/java-161/events/34195342/"&gt;Monday, October 24, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-40%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/hD-qlNi1t1DyMsZwWkRpkniknys/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hD-qlNi1t1DyMsZwWkRpkniknys/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/hD-qlNi1t1DyMsZwWkRpkniknys/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/hD-qlNi1t1DyMsZwWkRpkniknys/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=pLWZAO_UhXk:58rIP8XC9so:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=pLWZAO_UhXk:58rIP8XC9so:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=pLWZAO_UhXk:58rIP8XC9so:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/pLWZAO_UhXk" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-40%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/taxonomy/term/9">GPars</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/23">Groovy++</category>
 <category domain="http://www.groovyq.net/taxonomy/term/10">IDE</category>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/spock">Spock</category>
 <category domain="http://www.groovyq.net/taxonomy/term/15">依赖管理</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/12">测试</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 10 Oct 2011 04:51:43 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">537 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-40%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Grails每周观察（2011-39）</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/nzPYFxiCcMc/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-39%EF%BC%89</link>
 <description>&lt;p&gt;原文链接：&lt;a title=" This Week in Grails (2011-39)" href="http://burtbeckwith.com/blog/?p=944" rel="bookmark"&gt;This Week in Grails (2011-39)&lt;/a&gt;&lt;/p&gt;
&lt;div class="entrytext"&gt;
&lt;p&gt;Graeme &lt;a href="http://grails.1312388.n4.nabble.com/Grails-2-0-Delayed-Until-November-td3843567.html" target="_blank"&gt;宣布&lt;/a&gt;：Grails 2.0的发布时间将推迟到11月份，原因是我们正在集成Spring 3.1，他们的进度已经滞后了。这对于那些想使用2.0最终版的用户而言，无疑是个令人沮丧的消息，但好消息是我们因此有时间修复更多的bug和锤炼产品。&lt;/p&gt;
&lt;p&gt;Gradle团队已经开始了他们自己的&lt;a href="http://forums.gradle.org/gradle/topics/this_week_in_gradle_2011_39" target="_blank"&gt;&amp;ldquo;Gradle每周观察&amp;rdquo;系列&lt;/a&gt;。这对我而言是件好事，因为我没有时间去了解Gradle领域的动态，而每周总结可以帮助我了解目前发生的事情。将他们的&lt;a href="http://forums.gradle.org/gradle/tags/this-week-in-gradle.rss" target="_blank"&gt;RSS feed&lt;/a&gt;添加到钟意的RSS阅读器中，这样，有新的内容会自动通知你。&lt;/p&gt;
&lt;p&gt;本周，Groovy开发团队将增加一名新成员。&lt;a href="http://www.jroller.com/melix/" target="_blank"&gt;C&amp;eacute;dric Champeau&lt;/a&gt;将&lt;a href="https://twitter.com/#!/CedricChampeau/status/119678123976560640" target="_blank"&gt;从周一开始&lt;/a&gt;成为SpringSource的Groovy开发者。对于Groovy来讲真是个好消息。&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;div&gt;
&lt;hr /&gt;
&lt;p&gt;要是想关注这些&amp;ldquo;Grails每周观察&amp;rdquo;的帖子，可以通过&lt;a target="_blank" href="http://burtbeckwith.com/blog/?cat=32"&gt;分类链接&lt;/a&gt;【译者注：中文版可以直接访问&lt;a href="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F"&gt;这里&lt;/a&gt;。】或在RSS阅读器里订阅仅针对它们的&lt;a target="_blank" href="http://feeds.feedburner.com/this-week-in-grails"&gt;feed&lt;/a&gt;直接访问它们。&lt;/p&gt;
&lt;p&gt;这篇博文的翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.vitoria-gasteiz.org/"&gt;西班牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.groovyq.net/"&gt;Grails每周观察&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://t.co/"&gt;葡萄牙语&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.nabiladouani.fr/"&gt;法语&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2&gt;杂七杂八&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.1312388.n4.nabble.com/Grails-2-0-Delayed-Until-November-td3843567.html"&gt;Grails 2.0推迟至11月发布&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.silviowangler.ch/2011/09/26/using-caches-in-grails-2-0/"&gt;Grails 2.0中使用缓存&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.youtube.com/watch?v=fx1r7wdaVKA"&gt;&amp;ldquo;这是拉美最大Grails应用的HTTP流量示例。1.5百万用户，80k并发用户，8个tomcats，5个Linux Box，1个mysql，1个terracotta，1个rabbitmq。&amp;rdquo;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://naleid.com/blog/2011/09/26/smart-bash-zsh-aliases-to-run-appropriate-grails-version/"&gt;运行合适的Grails版本的Bash/Zsh智能别名&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.objectpartners.com/2011/09/29/grails-overriding-the-http-method"&gt;Grails：覆盖HTTP方法&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://quest4grail.blogspot.com/2011/09/speed-up-sts-eclipse-updates-by-using.html"&gt;使用download.eclipse.org镜像加速STS/Eclipse的更新&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://glaforge.appspot.com/article/lots-of-gradle-news-and-activity"&gt;大量Gradle的新闻和活动&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.jworks.nl/2011/09/30/friday-repost-grails-and-bamboo/"&gt;周五转贴：Grails和Bamboo&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://mrhaki.blogspot.com/2011/09/groovy-goodness-use-inject-method-on.html"&gt;Groovy小技巧：Map中使用inject方法&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://mrhaki.blogspot.com/2011/09/groovy-goodness-access.html"&gt;Groovy小技巧：使用Groovy SQL访问ResultSetMetaData&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-09-26"&gt;http://observatoriodegrails.com/hoy/?date=2011-09-26&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-09-27"&gt;http://observatoriodegrails.com/hoy/?date=2011-09-27&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-09-29"&gt;http://observatoriodegrails.com/hoy/?date=2011-09-29&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://observatoriodegrails.com/hoy/?date=2011-09-30"&gt;http://observato riodegrails.com/hoy/?date=2011-09-30&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.springsource.org/node/3270"&gt;Spring每周观察，2011年9月27日&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="plugins"&gt;
&lt;h2&gt;插件&lt;/h2&gt;
&lt;p&gt;本周新发布了11个插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/gordon-flash"&gt;gordon-flash&lt;/a&gt; 0.5. 保护flash scope免于被清除；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/hibernate-spatial"&gt;hibernate-spatial&lt;/a&gt; 0.0.4. Grails中可使用Hibernate Spatial；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/hibernate-spatial-hdb"&gt;hibernate-spatial-hdb&lt;/a&gt; 0.0.4. 针对H2/GeoDB的Hibernate Spatial Provider；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/hibernate-spatial-mysql"&gt;hibernate-spatial-my sql&lt;/a&gt; 0.0.4. 针对MySQL的Hibernate Spatial Provider；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/hibernate-spatial-oracle"&gt;hibernate-spatial-o racle&lt;/a&gt; 0.0.4. 针对Oracle的Hibernate Spatial Provider；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/hibernate-spatial-postgresql"&gt;hibernate-spati al-postgresql&lt;/a&gt; 0.0.4. 针对PostgreSQL/PostGIS的Hibernate Spatial Provider；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/hibernate-spatial-sqlserver"&gt;hibernate-spatia l-sqlserver&lt;/a&gt; 0.0.4. 针对Microsoft SQL Server 的Hibernate Spatial Provider；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/website-optimizer"&gt;website-optimizer&lt;/a&gt; 0.1. 简化Google站点优化器集成到Grails应用的标签库；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/jquery-mobile"&gt;jquery-mobile&lt;/a&gt; 0.1. 提供了jQuery mobile框架的资源文件；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/memcached"&gt;memcached&lt;/a&gt; 1.0.1. 帮助将Memcached集成为Hibernate 2级缓存提供者；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/cloud-support"&gt;cloud-support&lt;/a&gt; 1.0.3. 帮助Cloud插件更新来自于Cloud环境的服务提供商连接信息。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;还有更新了7个插件：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/console-enhancements"&gt;console-enhancements&lt;/a&gt; 0.4. 增强Grails控制台输出， 提供更好的视觉效果；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/google-visualization"&gt;google-visualization&lt;/a&gt; 0.4.2. 为Google Visualization API的交互图片提供标签库；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/notifications"&gt;notifications&lt;/a&gt; 0.2.5. 实现了发布-订阅 模式，通过不同沟通渠道将消息推向订阅者；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/ruby"&gt;ruby&lt;/a&gt; 1.0.M2. 通过JRuby在Grails中使用Ruby；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/twitter-bootstrap"&gt;twitter-bootstrap&lt;/a&gt; 1.3.0.6. Twitter Bootstrap CSS framework resource files&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/weceem-spring-security"&gt;weceem-spring-security&lt;/a&gt; 1.1. 提供了得以让Weceem插件使用Spring Security进行认证和授权的必要&amp;ldquo;胶水&amp;rdquo;；&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://grails.org/plugin/yui-minify-resources"&gt;yui-minify-resources&lt;/a&gt; 0.1.2. 使用YUI压缩库精简静态CSS和JS资源。&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="tweets"&gt;
&lt;h2&gt;有趣的嘀咕&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/rfletcherEW/status/118622174335598592"&gt;@rfletcherEW&lt;/a&gt;：这里有精神食粮：&lt;a target="_blank" href="http://t.co/7j3S27jp"&gt;http://t.co/7j3S27jp&lt;/a&gt; 不知道&lt;a target="_blank" href="https://search.twitter.com/search?q=%23Grails"&gt;#Grails&lt;/a&gt;中是否有实现领域映射器（Domain Mapper）模式的简洁方法&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/glaforge/status/119349996075229184"&gt;@glaforge&lt;/a&gt;：最臭名昭著的英国报纸的评论系统是一个&lt;a target="_blank" href="https://search.twitter.com/search?q=%23grails"&gt;#grails&lt;/a&gt;应用，每天接收到4.3+万的点击量。&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/CedricChampeau/status/119678123976560640"&gt;@CedricChampeau&lt;/a&gt;：周一，我将开始在VMware/SpringSource从事&lt;a target="_blank" href="https://search.twitter.com/search?q=%23groovy"&gt;#groovy&lt;/a&gt;语言的开发工作！为这个新挑战兴奋不已！&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/dynamind/status/119722937841496064"&gt;@dynamind&lt;/a&gt;：为Grails发布了Spring WebFlow的简单替代品：&lt;a target="_blank" href="http://t.co/bTmHXtrk"&gt;http://t.co/bTmHXtrk&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="jobs"&gt;
&lt;h2&gt;Jobs&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seeker.dice.com/jobsearch/servlet/JobSearch?op=300&amp;amp;FREE_TEXT=grails&amp;amp;FRMT=0"&gt;Dice keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobsearch.monster.com/PowerSearch.aspx?q=grails"&gt;Monster keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.careerbuilder.com/Jobseeker/Jobs/JobResults.aspx?_ctl0%3A_ctl2%3AucQuickBar%3As_rawwords=grails"&gt;Careerbuilder keyword search for Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/SpringSourceJob"&gt;SpringSourceJob Twitter feed&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobs.vmware.com/search?q=springsource"&gt;SpringSource job search at jobs.vmware.com&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.jobsticker.com/jobs/suedamerika/bolivien/24193-english-speaker-groovy-grails-developer"&gt;English Speaker Groovy / Grails Developer &amp;ndash; Bolivia&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.grailsjobs.com/view-job/329"&gt;Grails Developer &amp;ndash; Cambridge, MA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.ziprecruiter.com/job/Software-Engineer-Groovy-Grails/0709407e/"&gt;Software Engineer (Groovy, Grails) in Syracuse, NY&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.ziprecruiter.com/job/Software-Engineer-Groovy-Grails/26f66f64/"&gt;Software Engineer (Groovy, Grails) in Norcross, GA &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://blogs.balsamiq.com/team/2011/09/12/devops/"&gt;Looking for an Outgoing DevOps in California&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.virtualvocations.com/job/telecommute-grails-developer-64416.html"&gt;Telecommute Grails Developer&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://jobview.monster.co.uk/Java-Web-Developer-Team-Lead-Job-London-London-UK-102815557.aspx"&gt;Java Web Developer / Team Lead in London&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://hire.jobvite.com/CompanyJobs/Careers.aspx?k=Job&amp;amp;j=omvXVfwt"&gt;Senior Grails Developer (contract) in Cupertino, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.cybercoders.com/jobs/sr-software-development-manager-job/ch-swdevmngr-irvineca/?jobid=CH-SWDevMngr-IrvineCA"&gt;Sr Software Development Manager Job in Irvine, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/JamesCPeters/status/118689273695318017"&gt;@JamesC Peters&lt;/a&gt;: I am currently seeking &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Java"&gt;#Java&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Scala"&gt;#Scala&lt;/a&gt; &lt;a target="_blank" href="https://search.twitter.com/search?q=%23Groovy"&gt;#Groovy&lt;/a&gt; developers to join an expanding team here at Betfair. Please contact for more details.&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.dasauge.de/jobs/stellenangebote/fest/e187345"&gt;Java/Grails Entwickler, Berlin&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.atseven.nl/opdrachten/opdracht_23000.html"&gt;SPOED!! Grails Ontwikkelaar &amp;ndash; Groningen&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://seattle.ebayclassifieds.com/it-software-development/bellevue/java-developer-with-groovy-grails-experience/?ad=14041603"&gt;Java Developer with Groovy and Grails experience in Bellevue, WA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="https://twitter.com/#!/tramposTI/status/118788495874600960"&gt;@tramposTI &lt;/a&gt;: FORTIS &lt;a target="_blank" href="https://search.twitter.com/search?q=%23sp"&gt;#sp&lt;/a&gt; busca DESENVOLVEDOR JAVA. exp. em desenv. de sistemas web. spring, groovy e grails desej&amp;aacute;veis. cv: &lt;a href="mailto:recursos@fortis.com.br"&gt;recursos@fortis.com.br&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.spanjobs.com/india/jobs/it-telecommunication-jobs/chandigarh-jobs/grails-groovy-software-engineer-at-edifecs-technologies-pvt-ltd/3483316"&gt;Grails/Groovy Software Engineer at Edifecs Technologies&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://toronto.kijiji.ca/c-jobs-programmers-computer-Software-Developer-W0QQAdIdZ316310635"&gt;Software Developer at EchoAge in Toronto&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.manhattanjobs.com/job.asp?id=37185123"&gt;Grails Developer in Red Bank, NJ&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/I-am-looking-corporate-trainer-39757.S.73294612?qid=e340de39-14f7-4b95-af87-074a0b2b943e"&gt;I am looking for a corporate trainer on Grails&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groups/Software-Engineer-Groovy-Grails-Austin-39757.S.72004760?qid=e340de39-14f7-4b95-af87-074a0b2b943e"&gt;Software Engineer &amp;ndash; Groovy/Grails &amp;ndash; Austin, TX&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/jobs?viewJob=&amp;amp;jobId=1978231&amp;amp;trk=jobs_jig_jobs"&gt;Product Engineer [Junior and Senior Position in Singapore]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/jobs?viewJob=&amp;amp;jobId=1977987"&gt;Java (Grails) Software Engineer &amp;ndash; Santa Barbara, CA&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&amp;amp;discussionID=73117688&amp;amp;gid=39757"&gt;Grails developer in the Kansas City area&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&amp;amp;discussionID=72782627&amp;amp;gid=76751"&gt;Unique Groovy/Grails opportunity in Madison, WI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div id="meetups"&gt;
&lt;h2&gt;User groups and Conferences&lt;/h2&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://springone2gx.com/conference/chicago/2011/10/home"&gt;SpringOne 2GX 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;October 25&lt;sup&gt;th&lt;/sup&gt;-28&lt;sup&gt;th&lt;/sup&gt; in Chicago, IL&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://greach.es/"&gt;Greach&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;4 de Noviembre de 2011 en Madrid&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://osdc.com.au/"&gt;GR8Conf Australia&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;15th November 2011 in Canberra, Australia&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://skillsmatter.com/event/groovy-grails/groovy-grails-exchange-2011"&gt;Groovy &amp;amp; Grails eXchange&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;December 8&lt;sup&gt;th&lt;/sup&gt; and 9&lt;sup&gt;th&lt;/sup&gt; in London&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/Paris-Groovy-Grails/events/33801072/"&gt;Soir&amp;eacute;e Dans ton Cloud(Foundry) ! avec Peter Ledbrook (VMware/SpringSource) &amp;ndash; Thursday, October 13, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Paris Groovy and Grails User Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.phillygroovy.org/events/35537342/"&gt;Grails Web Flow and 5 jQuery plugins for your Grails app, Thursday, October 13&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Philadelphia Groovy and Grails User Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/london-ggug/events/28863331/"&gt;Betamax and Grails Plugins &amp;ndash; Lessons to learn, Monday, October 17&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;London Groovy &amp;amp; Grails User Group Meetup&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a target="_blank" href="http://www.meetup.com/java-161/events/34195342/"&gt;Monday, October 24, 2011&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;SF Bay Groovy and Grails Meetup Group&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-39%EF%BC%89';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/htl4dctdPIC1UYke_tq4o-ISLZw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/htl4dctdPIC1UYke_tq4o-ISLZw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/htl4dctdPIC1UYke_tq4o-ISLZw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/htl4dctdPIC1UYke_tq4o-ISLZw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=nzPYFxiCcMc:jLeaTTeAgvs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=nzPYFxiCcMc:jLeaTTeAgvs:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=nzPYFxiCcMc:jLeaTTeAgvs:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/nzPYFxiCcMc" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-39%EF%BC%89#comments</comments>
 <category domain="http://www.groovyq.net/category/%E6%A0%87%E7%AD%BE/gradle">Gradle</category>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/5">Groovy</category>
 <category domain="http://www.groovyq.net/taxonomy/term/10">IDE</category>
 <category domain="http://www.groovyq.net/taxonomy/term/22">前端开发</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/taxonomy/term/11">权限</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F">每周观察</category>
 <pubDate>Mon, 03 Oct 2011 12:52:12 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">535 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/grails%E6%AF%8F%E5%91%A8%E8%A7%82%E5%AF%9F%EF%BC%882011-39%EF%BC%89</feedburner:origLink></item>
<item>
 <title>Cloud Foundry + Grails + MongoDB迷你手册</title>
 <link>http://feedproxy.google.com/~r/groovyq/~3/sFT14sgkECg/cloud-foundry-grails-mongodb%E8%BF%B7%E4%BD%A0%E6%89%8B%E5%86%8C</link>
 <description>&lt;p&gt;&lt;a href="http://www.blogger.com/profile/14061039319441010865"&gt;Chris Harris&lt;/a&gt;在自己的&lt;a href="http://cjharris5.blogspot.com"&gt;Blog&lt;/a&gt;上发布了&lt;a href="http://cjharris5.blogspot.com/2011/09/cloud-foundry-grails-mongodb-quickstart.html"&gt;Cloud Foundry + Grails + MongoDB快速上手指南&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;p&gt;具体的步骤非常简单：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;创建Grails工程&lt;/li&gt;
&lt;li&gt;grails uninstall-plugin hibernate&lt;/li&gt;
&lt;li&gt;grails install-plugin mongodb&lt;/li&gt;
&lt;li&gt;grails install-plugin cloud-foundry&lt;/li&gt;
&lt;li&gt;创建和编辑Domain Class 产生Scaffolding代码&lt;/li&gt;
&lt;li&gt;部署：grails cf-push&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;由于Grails 2.0支持多数据源，因此在这个版本中uninstall hibernate plugin并不是一个必须的步骤。但是，因为缺省情况下，Grails会使用hibernate来持久化数据，所以要是想将数据保存到mongodb中的话，需要在domain class中显式的指定：&lt;/p&gt;
&lt;pre class="brush:groovy" title="code"&gt;
static mapWith = &amp;quot;mongo&amp;quot;&lt;/pre&gt;&lt;p&gt;除了这点之外，值得注意的其他地方还有：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;cloud-foundry插件需要使用你注册到cloudfoundry的用户名/密码，这些信息直接在Config.groovy中直接指定就好了：&lt;/li&gt;
&lt;pre class="brush:groovy" title="code"&gt;
    grails.plugin.cloudfoundry.username = '你的邮件'
    grails.plugin.cloudfoundry.password = '你的密码'
    &lt;/pre&gt;&lt;li&gt;缺省情况下，mongodb插件已经设置好相关的信息，如果没有特别的需求，直接使用即可。&lt;/li&gt;
&lt;li&gt;应用部署之后难免不会更新并重新部署，此时使用cloud-foundry插件的cf-update脚本就可以搞定。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;轻松几步，你便可以体会到云计算带来的感受！关于详细的步骤说明（其实也没详细多少，;)），请参见Chris的&lt;a href="http://cjharris5.blogspot.com/2011/09/cloud-foundry-grails-mongodb-quickstart.html"&gt;原文&lt;/a&gt;。至于mongodb和cloudfoundry插件的文档，请移步&lt;a href="http://grails-plugins.github.com/grails-cloud-foundry/"&gt;这里&lt;/a&gt;和&lt;a href="http://springsource.github.com/grails-data-mapping/mongo/index.html"&gt;这里&lt;/a&gt;。&lt;/p&gt;
&lt;p&gt;顺便说一句，Chris的Blog上有不少Cloudfoundry的文章，好好享受吧。&lt;/p&gt;
&lt;div class="outbrain_rating"&gt;&lt;SCRIPT LANGUAGE='JavaScript'&gt;
var OutbrainPermaLink	=	'http://www.groovyq.net/content/cloud-foundry-grails-mongodb%E8%BF%B7%E4%BD%A0%E6%89%8B%E5%86%8C';
var OB_raterMode      = 'none';
var OB_recMode        = 'strip';
var OBITm			        =	'1304499742';
var OB_langJS			=	'http://widgets.outbrain.com/lang_en.js'; 
var OB_showRec = false; 
if ( typeof(OB_Script)!='undefined' )
OutbrainStart();
else 
{
var OB_Script = true; 
var str = "&lt;script src='http://widgets.outbrain.com/OutbrainRater.js' type='text/javascript'&gt;&lt;/"+"script&gt;"; 
document.write(str);
} 
&lt;/SCRIPT&gt; 
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/piYisn_BEcWTIQIrXmEXpAsgSNk/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/piYisn_BEcWTIQIrXmEXpAsgSNk/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/piYisn_BEcWTIQIrXmEXpAsgSNk/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/piYisn_BEcWTIQIrXmEXpAsgSNk/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=sFT14sgkECg:7tXm7rQdVZs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/groovyq?a=sFT14sgkECg:7tXm7rQdVZs:VYtfdMxc7SE"&gt;&lt;img src="http://feeds.feedburner.com/~ff/groovyq?i=sFT14sgkECg:7tXm7rQdVZs:VYtfdMxc7SE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/groovyq/~4/sFT14sgkECg" height="1" width="1"/&gt;</description>
 <comments>http://www.groovyq.net/content/cloud-foundry-grails-mongodb%E8%BF%B7%E4%BD%A0%E6%89%8B%E5%86%8C#comments</comments>
 <category domain="http://www.groovyq.net/taxonomy/term/6">Grails</category>
 <category domain="http://www.groovyq.net/taxonomy/term/21">nosql</category>
 <category domain="http://www.groovyq.net/taxonomy/term/16">插件</category>
 <category domain="http://www.groovyq.net/category/%E5%88%86%E7%B1%BB/%E6%96%87%E6%91%98">文摘</category>
 <pubDate>Thu, 29 Sep 2011 05:09:03 +0000</pubDate>
 <dc:creator>foxgem</dc:creator>
 <guid isPermaLink="false">534 at http://www.groovyq.net</guid>
<feedburner:origLink>http://www.groovyq.net/content/cloud-foundry-grails-mongodb%E8%BF%B7%E4%BD%A0%E6%89%8B%E5%86%8C</feedburner:origLink></item>
</channel>
</rss>

