Ok here is another oddity that I have run into.
I have these two methods one is the action method used to call the cfc and the
other is the result event for the results.
[Bindable]
public var acKeys:ArrayCollection;
public var acPerson:ArrayCollection;
public var companyVO:CompanyVO;
private var personVO:CompanyPersonVO = new CompanyPersonVO();
/*
@brief: Display all company people
*/
private function aGetCompanyPerson():void
{
personVO.company_id = companyVO.alt_id;
trace(ObjectUtil.toString(personVO));
roCompany.sGetPersons(personVO);
}
/*
@brief: ResultEvent for get keys
*/
private function rGetCompanyPerson(event:ResultEvent):void
{
acPerson = new ArrayCollection(event.result as Array);
}
Here is the CFC method that I am using.
<cffunction name="sGetPersons" access="public"
returntype="com.rottmanj.model.vo.CompanyPersonVO[]">
<cfargument name="personVO" required="true"
type="com.rottmanj.model.vo.CompanyPersonVO">
<cfset companyDAO = CreateObject(
"component", "com.rottmanj.model.dao.CompanyPersonDAO").init( "uis_dev" ) />
<cfset rCompanyVO =
companyDAO.getPerson_CompanyDAO(personVO)>
<cfreturn rCompanyVO />
</cffunction>
Now when I run the action script method above I get the following error. I have
verified that the cfc is correctly working.
[RPC Fault faultString="Unable to invoke CFC - The PERSONVO parameter to the
sGetPersons function is required but was not passed in."
faultCode="Server.Processing" faultDetail=""]
Now you can easily see that I am passing in the parameter personVO. When I
trace out the personVO, I get the correct resutls of:
(com.rottmanj.model.vo::CompanyPersonVO)#0
company_id = "ALC01051998_000000000172"
company_person_id = ""
first_name = ""
is_active = false
lang_pref = ""
last_name = ""
mid_name = ""
person_id = ""
person_title = ""
person_type = ""
pref_display = ""