Hacking Around Grails' Broken Snapshot Dependency Mechanism
Even though Grails (up onto, and including Grails 2) support snapshot dependencies, the feature is flawed in a way that makes it unusable for us. This will be fixed in Grails 3, but we couldn't wait that long, so we ended up hacking together a workaround. This article describes why and how we did it.
Automatic Documentation with Flex-UI-Tests
All software projects that produce GUI-applications for users face the same problems:
1) How to maintain a documentation, that is always up-to-date?
Containing current screenshots showing realistic data, telling a user-story, explaining step-by-step how to use the application, also explaining the failure scenarios.
Even worse when the GUIs support multiple languages, in which case we need the screenshots and documentation in different languages as well...
2) How to test the GUIs automatically?
We want continuesly, fast, automatic feedback of tests written to test the GUI, the validation, checking if errors and events are handled and displayed correctly ...
The solution to these problems are never easy or cheap to archieve and depend on the GUI-technology used in the software. We made our dream come true for our applications written in Adobe Flex and here you can read how our solution looks like.
Mehr ...The Grails HibernateCriteriaBuilder
The HibernateCriteriaBuilder is a great Grails feature, that you should know when working with the Grails framework. It is an alternative way to create dynamic or static queries with a groovy syntax based on the Criteria API of Hibernate.
Although there is some documentation about it in the Grails Pages, this does not demonstrate some advanced features like joins or pagination. There are several blog posts about the HibernateCriteriaBuilder, but most of them only show a simple example. I want to share my experience with a more complex example that demonstrates some features like:
- query attributes of associated entities using joins
- pagination parameters and their consequences
- reuse of the criteria definition for similar domain classes
Mastering Grails TagLibs
The Grails documentation says the „Grails tag library mechanism is simply, elegant and completely reload-able at runtime.“ This is true and thus the Grails documentation about Tag Libraries is very brief. But there are many blog entries on the web that deal pitfalls that occur when one is more concerned with the issue. This article gives you an overview that is as complete as I needed information to understand, write and test Grails TagLibraries. It covers information, that you still do not find in the Grails documentation.
Mehr ...Making of: Viaboxx Sommerfest 2011
Mit leicht verkaterter Verspätung hier zunächst ein paar Bilder zum Aufbau unseres Sommerfestes (…die Bilder vom Abbau bzw. Wiederaufbau des Büros erspare ich uns besser):
Mehr ...
Flexboxx – A filter explorer for Flex
We are doing a lot of Flex skinning work here at Viaboxx, and IntelliJ IDEA’s lack of a WYSIWYG editor, especially for filters, made this rather tedious in the past. We did use this tool, but it’s outdated, occasionally offline and not open source, so we cannot extend it. Therefore we decided to develop our own filter explorer during 20 percent time, Flexboxx, and open sourced it.
Currently, you can use Flexboxx to manipulate a shape and a filter applied to it until it suits your needs, and then generate the source code for the filter. This is quite helpful when trying to get drop shadows or glow effects right.
We will probably extend the tool further, the next big thing on our list is support for gradients. We have a really sophisticated control for this in mind, stay tuned.
Groovy salutes you!
Some time ago in one of my previous projects, we had to generate customer salutations in emails and SMS texts in various ways, like these example show:
"Dear Mr. John Miller", "Dear Mrs. Dr. Miller", "Miller, John"
The task was nasty, because sometimes the user object had a firstname or a title, but some of the fields were optional, so that it could result in:
"Dear Mr. null Miller" (when firstname was null) orMehr ...
"Miller, " (when firstname as "")
Programmatic drawing of backgrounds in Flex
In order to create a “stripes” look for a component without juggling graphics, i wanted to implement my own fill. Actually, it turned out to be quite simple to do:
Mehr ...Simple and fast prototyping with Maven
Sometimes you are not working in the big enterprise project with thousand lines of code. You just want to play with a new library or a single aspect. Integrating this from the beginning in the main project can sometimes be a slow and complicated task.
We have a special area called Sandbox for this small projects in our repository. After years of IDE usage, some people loose the speed in starting a small project from scratch. Too much tooling can be a problem, but the right tooling can be a great time saver.
Maven is most of the time a useful thing, if used in the right way. Don’t reinvent the wheel and make it too complicated for others to understand your prototype.



