Hey Jorge,
I use decorators for all my transfer objects, even if there is nothing
in them so that I can type them throughout my entire application.
This way, the decorators are right there and ready for you if (and
more likely, when) you need to add additional functionality. Early in
their lives, many of them actually wrap no additional methods to the
Transfer object, and just look like:
<cfcomponent displayname="UserDecorator for MyApp"
extends="myApp.model.utils.AbstractTransferDecorator">
<cffunction name="configure" access="public" returntype="void">
<!--- nothing yet --->
</cffunction>
</cfcomponent>
When you do it like this, you can specify the type as:
"myApp.model.businessObjects.UserDecorator" . If you don't do it this
way, you will need to specify the type of "any", which I don't like,
or specify the type as "transfer.com.TransferObject" as you pointed
out, which I also don't like.
Hope that helps,
Brian
ps, if you decide to use decorators, don't forget to specify the path
to the decorator in the transfer.xml file:
<object name="User" table="user"
decorator="myApp.model.businessObjects.UserDecorator">
---------------