Graphical Mapper For ColdSpring Configuration Files!
Apr 14, 03:32 PM
Ever since my work with ColdSpring got more and more complex, i’d always felt a bit put out by the fact that as the ColdSpring.xml files grew larger, the greater the pain in the fundament* to track down relationships between beans, especially after being spoilt rotten by the graphical beanmap renderer in the SpringSource Tool Suite for Java Spring. I DID manage to get it to work (after a fashion) for ColdSpring.xml files after mucking about with DTD files, but i managed to murder my STS installation in the process, prompting a re-install…
The last project that I was on had 250+ beans and their relationships to track, so editing and tracking the ColdSpring.xml files not only became fraught, but also a strain on my trackwheel finger and mouse (I honestly think that scanning large Coldspring.xml files in Eclipse cost me more batteries than Call Of Duty 2).
So on a flight back from Scotland I decided to have a go and see how easy it might be to get some sort of visualisation going using ColdFusion’s built-in graphics commands. And I managed it. By the end of the flight I had basic blocks itemising the bean Ids and their constructor args and property refs linked using a variety of line types.
In the intervening time I’ve added some more features, like the ability to show groups of beans rather than the whole shebang, arrows indicating the direction of relationship (the maths behind this needs it’s own article, as i had to dust off skills 20+ years old!) and a little algorithm I found at the W3C pages to guarantee a decent contrast for the lines regardless of the colour of background you choose to render your diagrams with.
It’s not perfect, there’s some slap-dash that definitely needs revisiting and auto-wiring isn’t supported yet (it only considers the ColdSpring.xml files), but it DOES support multiple ColdSpring.xml files per project (When you use the <import resource=”…” /> tag)
So, without further ado, head over to the page, read the instructions and get a copy! You should be able to get it up and running in about 5 mins.
*I have kids.

