We're updating the issue view to help you get more done. 

cfajaxproxy does not correctly serialize arrays

Description

In our previous work with cfajaxproxy, we never attempted to pass an array as an argument to a remote CFC. We've since encountered a use case for this and it was much easier to just change the behavior than to go plumbing through the AjaxProxy extension, but I wanted to report our findings anyway:

In ACF, if you have a javascript array that is sent as an argument to an AjaxProxy of a remote component, it will be serialized like so:

1 argumentCollection: { "myArgument": ["foo", "bar"] }

In Lucee, every element of the array is mapped to a struct key with the index of the array as the key and the value of the array element as the value, e.g.:

1 argumnetCollection: { "0":"foo", "1":"bar" }

EDIT: Details and fix are both in the comments.

Environment

None

Status

Assignee

Pothys - MitrahSoft

Reporter

Samuel W. Knowlton

Labels

Sprint

Affects versions

5.3.2.33

Priority

Critical