Copy link to clipboard
Copied
I have a weird problem with an AJAX form combined with a CFC. Just to rule out any possibilities, is there a limit on the number of input fields you can pass to a CFC using AJAX? I only ask because it appears when the entire form is filled out the page throws an error that the CFC can't be found.
Also, I'm noticing that 2 of the parameters are out of order (in red). Would that make a difference? I'm also not sure why they are out of order when getting passed because they are not that way on the form. Am I missing something here?
CFC
<cffunction name="LyricOpera" access="remote" returntype="array" output="false">
<cfargument name="CurrentApplicationStep" type="string" default="" />
<cfargument name="ScreenSelection" type="string" default="" />
<cfargument name="Role1" type="string" default="" />
<cfargument name="Opera1" type="string" default="" />
<cfargument name="Company1" type="string" default="" />
<cfargument name="Year1" type="string" default="" />
<cfargument name="Role2" type="string" default="" />
<cfargument name="Opera2" type="string" default="" />
<cfargument name="Company2" type="string" default="" />
<cfargument name="Year2" type="string" default="" />
<cfargument name="Role3" type="string" default="" />
<cfargument name="Opera3" type="string" default="" />
<cfargument name="Company3" type="string" default="" />
<cfargument name="Year3" type="string" default="" />
<cfargument name="Aria1" type="string" default="" />
<cfargument name="Aria1Opera" type="string" default="" />
<cfargument name="Aria1Language" type="string" default="" />
<cfargument name="Aria2" type="string" default="" />
<cfargument name="Aria2Opera" type="string" default="" />
<cfargument name="Aria2Language" type="string" default="" />
<cfargument name="Aria3" type="string" default="" />
<cfargument name="Aria3Opera" type="string" default="" />
<cfargument name="Aria3Language" type="string" default="" />
<cfargument name="Variable1Name" type="string" default="" />
<cfargument name="Variable1Institution" type="string" default="" />
<cfargument name="Variable1Address1" type="string" default="" />
<cfargument name="Variable1City" type="string" default="" />
<cfargument name="Variable1State" type="string" default="" />
<cfargument name="Variable1Province" type="string" default="" />
<cfargument name="Variable1Zipcode" type="string" default="" />
<cfargument name="Variable1PostalCode" type="string" default="" />
<cfargument name="Variable1Phone" type="string" default="" />
<cfargument name="Variable1IntlPhone" type="string" default="" />
<cfargument name="Variable1Country" type="string" default="" />
<cfargument name="Variable1Email" type="string" default="" />
<cfargument name="Variable2Name" type="string" default="" />
<cfargument name="Variable2Institution" type="string" default="" />
<cfargument name="Variable2Address1" type="string" default="" />
<cfargument name="Variable2City" type="string" default="" />
<cfargument name="Variable2State" type="string" default="" />
<cfargument name="Variable2Province" type="string" default="" />
<cfargument name="Variable2Zipcode" type="string" default="" />
<cfargument name="Variable2PostalCode" type="string" default="" />
<cfargument name="Variable2Phone" type="string" default="" />
<cfargument name="Variable2IntlPhone" type="string" default="" />
<cfargument name="Variable2Country" type="string" default="" />
<cfargument name="Variable2Email" type="string" default="" />
From Firebug
argumentCollection{
"CurrentApplicationStep":"Lyric-Opera",
"ScreenSelection":"Submit",
"Role1":"Abigail",
"Opera1":"The Crucible",
"Company1":"Kingwood Summer Opera",
"Year1":"2010",
"Role2":"Title role",
"Opera2":"Suor Angelica",
"Company2":"Kingwood Summer Opera",
"Year2":"2008",
"Role3":"Lauretta",
"Opera3":"Gianni Schicchi",
"Company3":"Sam Houston State University",
"Year3":"2007",
"Aria1":"Tacea la notte placida",
"Aria1Opera":"Il Trovatore",
"Aria1Language":"Italian",
"Aria2":"Song to the Moon",
"Aria2Opera":"Rusalka",
"Aria2Language":"Czech",
"Aria3":"Embroidery Aria",
"Aria3Opera":"Peter Grimes",
"Aria3Language":"English",
"Variable1Name":"Todd R Miller",
"Variable1Institution":"Lonestar College Kingwood",
"Variable1Address1":"20000 Kingwood Dr",
"Variable1City":"Kingwood",
"Variable1State":"TX",
"Variable1Province":"",
"Variable1Zipcode":"77339",
"Variable1Phone":"281-312-1485",
"Variable1IntlPhone":"",
"Variable1Country":"USA",
"Variable1Email":"todd.r.miller@lonestar.edu",
"Variable2Name":"Anne Heath-Welch",
"Variable2Institution":"Todd Miller",
"Variable2Address1":"309 East 13th Street",
"Variable2City":"Houston",
"Variable2State":"TX",
"Variable2Province":"",
"Variable2Zipcode":"77008",
"Variable2Phone":"832-335-9108",
"Variable2IntlPhone":"",
"Variable2Country":"USA",
"Variable2Email":"anneheathwelch@hotmail.com",
"Variable1Postalcode":"",
"Variable2Postalcode":"",
"Submit":"Continue"}
methodLyricOpera
returnFormat
json
Copy link to clipboard
Copied
The fix is to set "setHTTPMethod("POST");" for the AJAX proxy. By default, the proxy function "setHTTPMethod("method");" is set to "GET" and 47 input fields with corresponding data is over the limit. The proxy function, "setHTTPMethod("method");", must be set to "POST" to avoid this error.