Use local resources when validating XML
Depending of you enterprise security policy, some – if not most of your middleware servers have no access to Internet. It’s even worse when your development infrastructure is isolated from the Internet...
View ArticlePowerMock, features and use-cases
Even if you don’t like it, your job sometimes requires you to maintain legacy applications. It happened to me (fortunately rarely), and the first thing I look for before writing as much as a single...
View ArticleDo we really need the DAO?
This may seem like a stupid question, especially after years of carefully creating them. Yet these thoughts about DAO arose in my mind when I watched Adam Bien’s Real World JavaEE rerun on Parley’s. In...
View ArticlePet catalog for JavaEE 6 reengineered
Some time ago, I published the famed Pet Catalog application on Github. It doesn’t seem like much, but there are some hours of work (if not days) behind the scenes. I wanted to write down the...
View ArticleDRY your Spring Beans configuration file
It’s always when you discuss with people that some things that you (or the people) hold for an evidence seems to be a closely-held secret. That’s what happened this week when I tentatively showed a...
View ArticleChanging default Spring bean scope
By default, Spring beans are scoped singleton, meaning there’s only one instance for the whole application context. For most applications, this is a sensible default; then sometimes, not so much. This...
View ArticleThe case for Spring inner beans
When code reviewing or pair programming, I’m always amazed by the following discrepancy. On one hand, 99% of developers conscientiously apply encapsulation and limit accessibility and variable scope to...
View ArticleSpring beans overwriting strategy
I find myself working more and more with Spring these days, and what I find raises questions. This week, my thoughts are turned toward beans overwriting, that is registering more than one bean with the...
View ArticleSolr overview from a beginner’s point of view
I’ve recently begun diving into Search Engines in general and Solr in particular. This is my understanding of it so far. Why Solr? It isn’t really feasible to execute blazing fast search queries on...
View ArticleConsider replacing Spring XML configuration with JavaConfig
Spring articles are becoming a trend on this blog, I should probably apply for a SpringSource position Colleagues of mine sometimes curse me for my stubbornness in using XML configuration for Spring....
View ArticleDesign by contract and bean validation
I must confess that despite all benefits of defensive programming, I usually limit myself to not expose mutable attribute to the outside world. Why is that? I believe this is mostly because of...
View ArticleIntegration tests from the trenches
This post is the written form of one of my submission for Devoxx France 2013. As it was only chosen as backup, I lacked the necessary motivation to prepare it. The subject is important though, so I...
View ArticleModularity in Spring configuration
The following goes into more detail what I already ranted about in one of my previous post. In legacy Spring applications I’ve to develop new features in, I regularly stumble upon a big hindrance that...
View ArticleMongoDB course, thoughts and feedback
I’m afraid I traded my ability to understand SQL for the ability to understand Object-Oriented Programming a long time ago. That’s why I never have been at ease with databases in general and SQL in...
View ArticleSpring 3.2 sweetness
Even the most extreme Spring opponents have to admit it is all about making developers life easier. Version 3.2 of Spring MVC brings even more sweetness to the table. Sweetness #1: No web.xml The...
View ArticleMaven between different environments
As a consultant, I find myself in different environments in need of different configurations. One such configuration is about the Maven settings file. This file is very important, for it governs such...
View ArticleStop the f… about Gradle
Stop the f… about #Spring & #Hibernate migrating to #Gradle. Repeat after me: “my project do NOT have the same requirements” #Maven This was my week’s hate tweet, and I take full responsibility for...
View ArticleNo more Hibernate? Really?
I recently stumbled upon this punchy one-liner: “No More Hibernate!“. At first, I couldn’t believe what I read. Then, scrolling down, I noticed that the site was linked to jOOQ, a framework that...
View ArticleLearning Vaadin 7 is out!
Hey everyone! No code nor rant for this week’s article but just a very good news: Learning Vaadin 7 has been published! This new edition of Learning Vaadin describes of course what is new in Vaadin 7...
View ArticlegetCaller() hack
Disclaimer: the following is a devious hack, it should only be used if you know what you’re doing. As developers, we should only call public APIs. However, the Java language cannot differentiate...
View Article