Nowadays we have JAXB, the standard
Java API for XML binding. I would prefer to use that, just because it's the standard, instead of something like Castor. A few years ago JAXB didn't exist yet, so Castor was a good choice.
Especially if you use JAX-RS (
Jersey) for RESTful webservices, JAXB is a great choice, because it understands JAXB annotations and makes it easy to create RESTful webservices - it can also serialize to JSON instead of XML, using the JAXB annotations.