This Week in Grails (2013-20)
The big news is that Grails 2.3 M1 was released. 2.3 will be a big update with many fixes, enhancements, and new features. M1 only has a subset of what’s coming and it’s already packed with cool new stuff. Graeme did some writeups on what’s coming, Grails 2.3 M1 and Upcoming M2
and Road to Grails 2.3: RESTful URL Mappings and URL Mapping Reports
.
Be sure to check out this cool video on Grails that the folks at Orange & Bronze
created.
I released two plugins, standalone-tomcat-memcached and standalone-tomcat-redis
. These are like the database-session
plugin in that they reconfigure the web server to store session data in a datastore instead of the traditional approach, but these only work with Tomcat since they work directly with the Tomcat APIs instead of intercepting and replacing the real sessions. I’ve been working on reconfiguring how Grails applications deploy to Heroku, changing from using an embedded Jetty instance to using the standalone
plugin (either with Tomcat or Jetty). Along the way since Heroku doesn’t support sticky sessions I created these plugins to get things working smoothly with the heroku
plugin. More on this later.
If you want to keep up with these “This Week in Grails” posts you can access them directly via their category link or in an RSS reader with the feed
for just these posts.
Translations of this post:
Miscellaneous Items
-
Groovy for Fun and Profit
-
Grails Goodness
-
Reactor – A Foundation for Asynchronous Applications on the JVM
-
Grails Goodness: Testing Views and Templates
-
Livereload in a Grails application via Grunt.js
-
Gradle Goodness: Running a Single Test
-
Grails Tip: Getting JSON directly from Grails MongoDB-GORM Low Level API
-
Grails Goodness: Checking Results from Forward Action in Controller Unit Tests
-
Choosing DropWizard to deliver content within your Grails projects
-
Gaelyk 2.0 is released
-
Spock: Test Well and Prosper
-
“Why We Love Groovy and Grails” from Orange & Bronze
-
Gradle Goodness: Show More Information About Failed Tests
-
This Week in Spring – 7 May, 2013
-
This Week in Spring – May 14, 2013
Plugins
There were 7 new plugins released:
-
apidocs
version 0.1. Generates REST API documentation
-
criteria-js
version 0.3. GORM criteria for JavaScript
-
db-helper-rest
version 0.3. Provides methods for dropping, creating and initialization of database schema from the project bootstrap
-
httplogger
version 1.0. Logs HTTP traffic
-
required-parameters
version 1.0.0. Enables verifying required parameters for controller actions using simple annotations
-
standalone-tomcat-memcached
version 0.1. Uses Memcached as the Tomcat session manager
-
standalone-tomcat-redis
version 0.1. Uses Redis as the Tomcat session manager
and 26 updated plugins:
-
goodform
version 1.0.2. Create extremely usable complex forms with rules based flow that work well in browsers
-
airbrake
version 0.9.3. Notifier plugin for integrating apps with Airbrake
-
asynchronous-mail
version 1.0-RC5. Send email asynchronously by storing them in the database and sending with a Quartz job
-
aws-sdk
version 1.4.3. Use the Amazon Web Services infrastructure services
-
closure-templates-resources
version 0.2.3. Supports server-side compilation of .soy template files to JavaScript files
-
easyui
version 1.3. Supplies jQuery EasyUI resources and taglibs
-
external-config-reload
version 1.3.0. Polls for changes to external configuration files (files added to grails.config.locations), reloads the configuration when a change has occurred, and notifies specified plugins by firing the onConfigChange event in each
-
font-awesome-resources
version 3.1. Integrates the Font Awesome icon set
-
google-visualization
version 0.6.2. Provides a taglib for the interactive charts of the Google Visualization API
-
grails-melody
version 1.44. Integrates the JavaMelody system monitoring tool
-
hibernate
version 3.6.10.M3. Provides integration between Grails and Hibernate through GORM
-
i18n-fields
version 0.6.4. Provides a declarative way of localizing domain classes’ fields for different languages
-
jrimum-bopepo
version 0.3. Allows you to create Boletos Bancarios for Banks of Brazil using the Jrimum Bopepo library
-
neo4j
version 1.0.0.RC2. GORM for Neo4j
-
newrelic
version 1.0-2.18.0. Adds the NewRelic Real User Monitoring feature to your GSP pages
-
pusher
version 0.5. Wrapper for pusher.com REST api
-
recaptcha
version 0.6.5. Integrates ReCaptcha and Mailhide services
-
remote-pagination
version 0.4.4. Provides tags for pagination and to sort columns without page refresh using Ajax and loads only the list of objects needed
-
segmentio
version 0.2.0. Use Segment.io to send your analytics data to any service you want, without you having to integrate with each one individually
-
spring-security-mock
version 1.0.2. Mock authentication support for Spring Security
-
standalone
version 1.2.1. Runs a Grails application as a JAR file with an embedded Tomcat server
-
vaadin
version 1.7.5. Adds Vaadin (http://vaadin.com/) integration
-
validate-config
version 0.4.2. Adds methods to ConfigObject for validating expected and required properties
-
war-exec
version 1.0.3. Makes the war files generated by Grails executable (java -jar myapp.war) by embedding Jetty. Jetty can be configured using properties in Config.groovy
-
webdriver
version 0.4.2. Integrates Webdriver with Grails to allow functional testing in both HtmlUnit and real browsers
-
xwiki-rendering
version 1.0-RC3. Convert texts using XWiki Rendering Framework
Interesting Tweets
- @zachlendon: REST support being built into Grails 2.3 is already looking awesome and will get even better with your feedback: https://t.co/6d3krRtDJY
- @LaurensFridael: Use #Groovy 2.0 in #Alfresco through #OSGi: https://t.co/MmysOgejUw
- @CloudBees: Grails ClickStarts now available – thanks to @cyrilleleclerc! http://t.co/VK0HtEoKt0
- @rfletcherEW: I started working on a #Groovy syntax plugin for @prismjs. Demo with Jasmine tests running in-page http://t.co/9uOwwl83oN
- @chandanluthra: Coupon adf90ra can get you a free copy of #Groovy mag’s May 2013 issue. visit http://t.co/e1v9axat7j #Groovymag #Grails
- @gr8conf: Bottling the #gr8conf beer with the crew. 300 half liter bottles. Join the fun at http://t.co/4Bv70MoQHN http://t.co/Jl4Z6jDJ6O
- @gr8conf: The #gr8conf beers lined up. #gr8beer, great taste. #groovy #grails http://t.co/OpAwOMFxym
- @antony: You might be interested to know, internal tools (for ingesting content/managing clouds) for both @netflix and @NOWTV are written in #grails
- @epragt: Again, another update on the #groovy #gina2 book! http://t.co/JjmU3jkvfN #gradle #json #xml #testing
- @vFabric: Building an Enterprise CRM with #Grails and #Spring Integration – YouTube http://t.co/zUS94aVIM5
- @johnrengelman: Configure maven repository credentials in #Grails 2.3.0.M1 – https://t.co/xPHl2fAMpU
-
@johnrengelman: Hint – #Grails 2.3.0.M1 doesn’t auto detect POM only dependencies. Need to declare them as
: :pom: - @ilopmar: Moving from processing 1 item/5secs to 20 items/sec using GPars with #Grails. From 15 hours now it last 12 minutes. Awesome 🙂 #GPars #FTW
- @netbakter: Why I love #grails: created an MVC app in 2.5 hours, 90% time spent with customizing CSS.
- @marcoVermeulen: Looking for people to hand the Ubuntu PPA for Groovy, Grails and Griffon over to. Let me know if anyone’s interested.
- @j_brisbin: #Reactor #Groovy quickstart https://t.co/6Xt1rEltJN @ProjectReactor #BigData
-
@amaebooksale: Programming Grails (Burt Beckwith) が、Kindleストアで57%OFF、2011円になっています。洋書新刊10位。
http://t.co/TEdU1oIjaC - @tim_yates: Don’t forget like I did that you need ‘grails -reloading run-app’ if you want #grails 2.3.0.M1 to reload during dev http://t.co/nm0P4WyAAR
- @danveloper: In #Grails, GrailsNameUtils#getNaturalName is an easy way to translate property names like “firstName” to natural names like “First Name”
- @lhotari: Finally found a way to get rid of global synchronization / blocking that PrintWriter instantiation causes: https://t.co/KwU7m4W7RD #Grails
- @ppazos: Pretty print #JSON and #XML in #Grails change Config.groovy grails.converters.default.pretty.print = true #TarmacIT
- @literalice: Programming Grailsにあった、いろんなバージョンのGrailsに対してプラグインのテストするためのスクリプトが良い感じかもしれない https://t.co/9Uc0lzcV6U
- @SpringSource: SpringOne 2GX agenda grid live! Make your fall conference decisions now and get good airfare… #S12gx @SpringOne http://t.co/u79SGnOkaB
- @domix: Ya están vendiendo los boletos para el #ggx de este año en Londres http://t.co/wU2nSFI20L #ahpm
- @asteingr: Groovysh now has its ‘doc’ command 🙂 http://t.co/StUIiQQTY4 Thanks to @nagai_masato for this great contribution! #groovy #groovysh
- @platetone: It’s more like Grails “Funtime” Exception. #grails
Jobs
-
Dice keyword search for Grails
-
Monster keyword search for Grails
-
Careerbuilder keyword search for Grails
-
SpringSourceJob Twitter feed
-
SpringSource job search at jobs.vmware.com
- @DaleenJvR90: Any Java Developers out there with Grails exp?? I have a position in Centurion
-
Sr. Software Engineer – Tools at Black Pearl Systems in Cupertino, CA
-
Software Engineer in the Greater Denver Area
-
Senior Software Engineer at CommerceHub in Albany, NY
-
Java Engineer (Groovy/Grails) in Irvine, CA
-
Software Engineer at SRA International in Charlottesville, VA
-
Groovy/Grails Developer at Enstratius/Dell
- @mattchallis: Looking for a #permanent #Java #developer for a great opportunity in #London – matthew@cogsagency.com #Java #Grails #digitaljobs
- @Aurelien_PaloIT: Recherche developpeur #Grails RT please 😀
- @DmitriStupak: need Java/Grails developer – downtown, start asap (perm) – Dmitri@imsgroup.com for details
- @ppazos: Buscamos desarrolladores Java / Groovy / Grails en Uruguay para USA
- @E_Luckhurst: Calling all GRAILS developers! High profile contract assignment in London, please get in touch if interested. If you’re not & know someone …
-
Java/Grails & Devops Professionals in Dubai
-
Sr. Grails Engineer in San Mateo, CA
-
Applications Developer – Grails in Atlanta, GA
-
Senior Grails Developer // Global Leads Group GmbH – Berlin
-
Programador Grails – Madrid
-
Java Engineer (Groovy/Grails) – Phoenix, AZ
-
Java Developers – Java and Groovy or Grails – Edinburgh
-
Java Developer – Groovy Linux Apache in London
-
Multiple Openings for Java Developer with Groovy and Grails experience in Columbus, OH and Phoenix, AZ
-
Software Engineer at RTS Labs in Richmond, VA
-
Lead/Senior Java Developer with Groovy/Grails in Marlborough, MA
- @ShawnWallace: Ping me if you are interested in any Java/Grails opportunities. Have a pretty awesome high profile project. @centric
- @chewbaccajones: Looking for a short-term grails consultant, know a good one?
- @drapetomaniac: I’m looking for a Java developer with expertise in Spring or someone with direct experience with Groovy and Grails.
- @TARMAC_US: Grails Developer in MN? Innovative platform looking for talented people as we speak! #Grails #java #groovy #programming #spring
- @Weins: New Search — senior software engineer with Java / Java EE BK and 1 year of recent Grails experience
-
Grails Sr. developer – México-Jalisco-Guadalajara
-
Developpeur Web Java Et Grails – Paris ou toulouse
-
Java/Grails Developer in Makati
-
Software / Web Developer at Temple University in Philadelphia, PA
-
Groovy/Grails Developer in San Francisco
-
Develop in Groovy & help save the world! – Cleveland, OH area
-
Java Developer (Groovy/Grails) 8 month contract in Scottsdale, AZ
-
Java Grails Developer in Harrisburg, PA
-
Grails / Java/ Oracle Developer needed for premier University in NYC
-
Two Groovy Grails developers in San Mateo
User groups and Conferences
-
GR8Conf US 2013
- July 21st-23rd Minneapolis, MN
-
SpringOne 2GX 2013
- September 9th-12th Santa Clara, CA
Burt,
Thanks for the hard work on the Heroku and cache plugins. It’s much appreciated and I like having options when it comes to deployment. It’s a big win for shops that have a mix of frameworks. i.e. Grails and Rails.
Cheers
What happened to this blog? Still checking daily for new content… Keep up the good work!
Interested in hearing more about your work with Grails + Heroku. Everything works beautifully in the technical/configuration sense, but I am having issues with memory usage.
-tjw