Jon Udell struggles with Java APIs - I agree that dynamic languages (Python and PHP) are just so much easier to use:
"This weekend, I was working with the Java API to Sleepycat's Berkeley DB XML, and it felt like one of those bad dreams in which you're slogging through molasses toward an ever-receding goal. I switched to Jython and quickly got the job done. And it was the same job (indexing and searching content) using the same engine (Berkeley DB XML).
Of course the even better solution was native Python bound to DB XML, a combination that is not so easy to materialize. When I finally got that working, things really started to cook."