J2EE Configuration Hassles

I decided I'm going to use my new found blogging freedom to rant a little bit. Yesterday I spent almost an entire day debugging a class loading issue with JBoss. In the end it turns out JBoss wasn't even at fault, but I'm still going to rant about ridiculously complicated J2EE configurations. What is up with tons of XML and other configuration files? Why is it so hard to figure out which file does what? Why are there so many files in the first place? Sometimes JBoss really drives me nuts. The same goes for the Spring Framework which we are now using at work. It's pretty cool and all, but I'm not really sure how it's supposed to make things simpler. Having to edit the application context XML file every time I add a new bean or want to inject another dependency is a real PITA. It really doesn't save me any time there. Why can't it just automatically detect that stuff by introspecting my code? Or what about annotations? I guess that's why everybody loves Ruby on Rails -- because it "just works". Anyway, enough ranting for today.