I theoretically understand the point why there is no abstract static in Java, as explained for instance in Why can't static methods be abstract in
I basically had the exact same problem.
You may want to look at the solutions suggested to me in my question
I liked Bozho's idea, but according to himself it was a bad idea. :) I suppose better programmers can explain why it is so. Ralph's and Jon Skeet's solution also works.