Did you know that you can specify in your returnType for a component method that it returns not just a component, but an array of components? To specify that you want to return a component of type Apple, you would normally do this:
to specify an array of Apples, you simply do:
You can also specify the same thing in cfargument. Here is an example:
<cffunction name="getApples" returnType="apple" output="false" access="remote"
hint="Get me some darn apples.">
<cfset var i ="">
<cfset var result = arrayNew(1)>
<cfloop index="i" from="1" to="10">
<cfset arrayAppend(result, createObject("component","apple"))>
<cffunction name="setApples" returnType="void" output="true"
hint="Just give me some apples.">
<cfargument name="appleData" type="apple" required="true">
Note: There is a bug with the built-in component viewer. It shows the type as Apple, and when you click on it, you get an error. I had planned to do some updates to the component viewer so I will fix that as well. I need to ask Macromedia if I can then simply package the entire zip. (Technically it would be a copyright violation, but I'd have to have to package up my changes as a bunch of things to cut and paste.)