Tuesday, March 26, 2013

Austin Groovy and Grails Meetup April 4!

Come meet up with the Austin Groovy and Grails User Group meetup @ Mister Tramps, April 4! http://www.meetup.com/Austin-Groovy-and-Grails-Users/events/110935792/ I will give a talk on clustering Quartz in Grails! (Same from gr8conf.us last year!). This event sponsored by New Iron. ( http://www.newiron.com

Monday, January 28, 2013

When GVM

Love GVM for switching between Grails versions. However my install in Ubuntu stopped working a few weeks ago and I've been puzzled ever since. If you run gvm, and it stops working where the command 'gvm' returns nothing, run this: source ~/.gvm/bin/gvm-init.sh then you can do 'gvm selfupdate' to bring it up to date. Working like a champ now! If you do Groovy/Grails/Griffon/Gradle/Vertx development and don't use GVM you should. Check it out at http://gvmtool.net/

Wednesday, October 24, 2012

AWS & VPC - OpenVPN setup with private subnets...

I have finally battled the beast of getting Openvpn set up on VPC to access both public AND private subnets. There is one thing not mentioned in any of the tutorials I found that is critical. When you install OpenVPN, and it is configured for NAT, it will use a private subnet for the vpn clients on 5.5.16.0/20, which you must add a route for under VPC-> route tables -> new -> destination -> 5.5.16.0/20 -> associate (enter your subnet ID) Now when clients VPN in with openVPN, they can contact everyone on both subnets. Don't forget to allow the traffic in using the security groups both inbound and outbound as well, such as ICMP ping, so you can test communications properly (and whatever services you need). helpful links: Using from linux: http://openvpn.net/index.php/access-server/docs/admin-guides/182-how-to-connect-to-access-server-with-linux-clients.html video tutorial (great, except the route part is missing) http://dbsgkhvbz3k7m.cloudfront.net/AmazonVPC/AmazonVPC.html happy routing!

Thursday, October 18, 2012

SpringOne2GX Wrap up

Great conference this year, it was very good to see some familiar faces and finally meet more in person. I hope my talks where useful to everyone! The big takeaway I got is Grails is moving to be more client capable and more social with the new platform core event bus technology as well as more mobile (jquery-mobile-scaffolding). Less and less are MVC types of systems being relevant with such rich Javascript and HTML5 capabilities of browsers. Users expectations are changing to rich client interfaces, single page apps, and quick deployments as well. Plugins are more important that ever, and user plugin contributions are one of the big things that make Grails so great. Also if weren't for all of the advancements with Groovy and Spring libraries Grails wouldn't be what it is today. Another thing I like about the Grails, Groovy, and Spring teams is every is so friendly, helpful, and willing to chat with everyone - that makes it feel like a big family even to outsiders to Springsource. Of course Jay Zimmerman is the master of these conferences, everything was so well done, professional, and smooth. I've uploaded sample apps to my github account at https://github.com/rvanderwerf and if you look in the doc folders it will include PDFs of my slides as well. During the conference I release a new version of the struts1 plugin to work with Grails2 th made numerous improvements to the GVPS (Grails Video Pseudo Streamer) plugin as well. You can go to http://www.grails.org/plugin/gvps to see the latest version. Special thanks and shoutouts goes out to Burt Beckwith, Sebastian Blanc, Soren Glasius, Peter Ledbrook, Colin Harrington, Cedric Champeau, Luke Daley, Graeme Rocher, Jeff Brown, Stefan Ambruster, Guillaume Laforge, Jay Zimmerman and everyone else who shared drinks and conversation. I especially want to thank those who attended my talks. I hope to see everybody next year, wherever it is at! Also according to Peter Ledbrook and S0ren Glasius, everytime someone calls Grails 'Groovy on Grails', a puppy dies ;)

Sunday, October 14, 2012

SpringOne2GX

Heading out to speak at SpringOne2GX in DC today. I'll be giving 2 talks, 'Streaming Video in Grails' (Using the formerly 'grails-video' plugin now called 'gvps'(Grails Video Pseudo Streaming Plugin). I'll go over the plugin, how ffmpeg, and basic streaming works, flowplayer and jw-flv integrations, and a little about quartz to help distribute video processing load. The second talk is 'Clustering Grails 2 with Terracotta' which is a dive into what you need to do and how to figure a total clustering solution with Grails 2 that uses Ehcache, HTTP Session Clustering, and Quartz. I'll give examples of each, and demo a Grails 2 app that uses all of these at once at the end. Of value you will find a library compatibility matrix of what you need to add to your BuildConfig to make everything work. There are so many great speakers and topics I'm going to have a hard time choosing what talks I will attend myself!

Friday, August 10, 2012

Learned a interesting lesson with Grails today.....

Learned a interesting lesson with Grails today..... NEVER give plugins a name in all caps(Or more than 1 capital letter in a row). I had 2 plugins I made, called 'SPP' and 'RFCORE' which (due to JIRA wanting to name the svn repos this way) cause an interesting breakdown in Grails. I publish these plugins to Artifactory via the release plugin in Grails, and bind them to the app in the plugins {} closure. The other day I added my fork of Weceem (I fixed it to work on Oracle and send a pull request back to them) to the plugins{} block. Works fine via inline plugin mode with my (all caps) plugin names. Once I deploy a WAR file, suddenly Grails has no idea where my plugins are (war is made, however the plugins are missing from the war). What threw me off was that if I uninstall the weceem plugin, my (all caps) plugins are now built into the war. So I step through the code in the Grails PluginBuildSettings class in the method 'getSupportedPluginInfos' and find that the plugin registry has my plugins like this 'SPP-0.1-SNAPSHOT' but the maven resolution is looking for them as 'spp-0.1-SNAPSHOT' and automatically lower casing it for me. If those don't match (it is case sensitive, I personally think it should not be), Grails acts like the plugin basically doesn't exist and doesn't package it up. Now I refactor my plugin class files from SSPGrailsPlugin to sppGrailsPlugin and it works. I'm not sure if this is a bug in Grails (2.x) or not, or it just doesn't support plugins with more than one capital letter in a row in it. If it's a bug I can patch it and submit a pull request. Moral of the story, don't make Grails plugins with more than 1 capital letter in a row, or you will spend all day figuring out what is going wrong ;)

Monday, July 30, 2012

Posted the slides for my #Gr8Conf Enterprise Talk on my github page: https://github.com/rvanderwerf/GR8Conf-slides