jsonData can be null if error