How to define dynamic Post request with an element to be array list

I defined the Post request with variable as below:
_ {_

_ “BrandName”: “${brandName}”,_

_ “Features”: {_

_ “Feature”: “${features}”_

_ },_

_ “Id”: “${id}”,_

_ “LaptopName”: “${laptopName}”_

_ }_
And in test case , I call the request :

     _def features = \['2GB RAM', '3TB Hard Drive'\];_

_ WS.sendRequest(findTestObject(‘Post_AddFurniture’, [(‘brandName’) : ‘Test’, (‘features’) : features_

_ , (‘id’) : “5”, (‘laptopName’) : ‘Latitude’]))_

The actual result after execute test case, the “Feature” element contains one string “[2GB RAM, 3TB Hard Drive]”:

{

_ “BrandName”: “Dell”,_

_ “Features”: {_

_ “Feature”: [_

_ “[2GB RAM, 3TB Hard Drive]”_

_ ]_

_ },_

_ “Id”: 5,_

_ “LaptopName”: “Latitude”_

_ }_

But I expect the “Feature” element contains two string “2GB RAM” and “3TB Hard Drive”
{

_ “BrandName”: “Dell”,_

_ “Features”: {_

_ “Feature”: [_

_ “2GB RAM”,_

_ “3TB Hard Drive”_

_ ]_

_ },_

_ “Id”: 5,_

_ “LaptopName”: “Latitude”_

}

Use the groovy JSONOutput to build your body from a map and parse it to a right string, and pass it as a single ${body} variable to the POST request:

http://docs.groovy-lang.org/latest/html/gapi/groovy/json/JsonOutput.html

How to handle Arraylist in Request body?
I have a json request something like
{
“Data”: {
“ItemsList”: [ “value1”, “value2”,“value3”, “value4”],
“DateTime”:“datetimevalue”
}
}

I am trying to check invalid and empty values in Itemslist array.
On using Globalvariable.ItemsList, its printing me [value1, value2,value3,value4]
If I pass Globalvariable.ItemsList in the script of SendRequest, i am getting 400 error, invalid request params