jsonic 0.9.5リリース
いつまでたってもRESTfull版JSONRPCServletの仕様が決まらないので、net.arnx.jsonic.JSONの追加機能や仕様変更だけ反映してリリースしました。以前予告したSeasar2用機能の標準添付などJSONRPCServletに関する機能に関しては今回リリース対象となっていませんのでご注意ください。
追加機能、仕様変更点は次の通り。
- maxDepthのデフォルト値を32階層に変更しました。
- InputStreamによるParseを実装しました。文字コードは、UTF-8, UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LEから自動判別されます。
- Parse時にBOMが見つかった場合、無視するようにしました。
- Parse時の日付変換ロジックを見直し、一般的にコンピュータが取り扱う日付フォーマットに対応しました。
- Parse時にjava.sql.Date/java.sql.Time/java.sql.Timestamp/java.util.TimeZoneへの変換に対応しました。
- Parse時に値が指定されない場合、nullが指定されたものとして取り扱うよう変更しました(ただし、カンマの省略はできません)。
- Parse時に「'」で囲まれた文字列はエスケープ処理しないよう変更しました。
- ParseのJSON objectからJavaBeanへの変換時、名称が常にJavaBean規約に合うように変換していましたが、マッチに失敗した場合のみ変換するように変更しました。
- ParseのJSON objectからJavaBeanへの変換時、Javaの予約語にも対応できるよう末尾に「_」の付いたプロパティでもマッチできるよう変更しました。
- convertメソッドの引数にkey値を追加しました。
- 余り役に立たないためinvokeメソッドは廃止しました。
- 各種JavaScriptライブラリのJSON対応が整ってきたため、JavaScript版のJSON.encode/JSON.decodeを削除しました。