In Struts, the terms ActionForm and Form bean are pretty much synonymous. They both refer to JavaBean that has the Struts ActionForm as an ancestor. A DTO, however is an JavaBean that follows the Transfer ObjectJava EE pattern. A DTO's job is to transfer data to and from the Model objects. A DTO might have similar properties to your ActionForm, but it should not Extend the Struts ActionForm. The reasoning behind this is that you want to keep your model objects free of any dependencies on on a View platform such as Struts.