protected JSON parse with a try/catch