I've played with Ruby on Rails quite a bit in the last year or so. Over that time, I've been both excited and frustrated with it.
I think RoR is a great tool, and it can be leveraged for a lot of web applications that are traditionally written in Java or .Net. A lot of developers and companies would be well suited to add it to their toolbox.
However, what I've personally found is that I am unable to devote the time I need to become proficient. It is pretty easy to write a quick application in RoR. The syntax is easy to pick up, and the documentation is good enough that I can muddle my way through. However, without having it as part of my day job, my one-off projects aren't enough to for my personal knowledge to reach critical mass.
The triggering event of this decision was a recent effort to build a small application recently. It is based on an implementation of a public spec, and there were several RoR and Java libraries that provided the functionality I needed. After digging into the RoR libraries, I got frustrated and found it difficult to find the hooks I needed to build what I wanted. The usage just wasn't natural enough. I gave up and went back to the warm comfort of the Java libraries.
So, while I believe that I *COULD* be more productive in RoR, I *AM* more productive in Java. Based on the total time I've spent with RoR, I've decided to give up and refocus on Java. It is hard enough keeping up with everything going on in Java and .Net, I just can't spare the time to track RoR too.