added Jackson JSON support