When deserializing a JSON-serialized Apex object, received from a Lightning component, I'm getting the following error:
FATAL_ERROR System.JSONException: N/A at [line:1, column:155]
Data class:
global class SomeClass {
@AuraEnabled
global Decimal someField { get; set; }
}
Server-side Lightning controller:
@AuraEnabled
global static void someMethod(String objJson) {
System.debug(objJson); // {"someField":""}
SomeClass obj = (SomeClass)JSON.deserialize(objJson, SomeClass.class); // throws exception
}
Client-side Lightning controller:
"callServer" : function(component) {
var obj = component.get("v.obj");
obj.someField = valueFromInput; // an HTML input element
var serverAction = component.get("c.someMethod");
serverAction.setParams({ "objJson" : JSON.stringify(obj) });
$A.enqueueAction(serverAction);
}