Skip to main content
Participant
August 24, 2017
Question

CF 2016: serializeJson dies on CFC with null values

  • August 24, 2017
  • 1 reply
  • 514 views

When serializing an object with a null or "undefined value" property (at least when it's a date), serializeJson dies trying to format the null date.

'' is not a valid date/time format.

----------------

component displayName="Order" accessors="true" {

     property name="orderNumber" type="string"

     property name="dateOrdered" type="date"

}

...

var order = new Order();

order.setOrderNumber("12345");

serializeJson(order);  // BOOM!

---------------------

In the past, null/undefined values would be excluded from the serialization -- and that's exactly what I want.

Is this just the way it is now?! Or is there something else I can do?

This topic has been closed for replies.

1 reply

BKBK
Community Expert
Community Expert
August 25, 2017

It should work. It did when I tested it.

order.cfc

component displayName="Order" accessors="true" {

     // Note semicolons!

     property name="orderNumber" type="string";

     property name="dateOrdered" type="date";

}

test.cfm

<cfscript>

order = new order();

order.setOrderNumber("12345");

writeoutput(serializeJson(order)); 

</cfscript>

When I run the above code in ColdFusion 2016, the result is:

{"orderNumber":"12345"}