2008년 11월 17일 월요일

Jettison - array serilaization is not consistent


cxf 가지고, restful 로 json 출력 지원하는 작업을 하다가 발견.

배열로 떨어져야 할 놈이 길이가 1인 경우 스칼라 값으로 내려와서

좀 황당하더라...

http://jira.codehaus.org/browse/JETTISON-22
http://blogs.sun.com/japod/entry/missing_brackets_at_json_one

해결책은, cxf 에선 custom provider 를 붙이던가 하면 되는데
json 받아서 처리하는 스크립트 단에서 고쳐도 된다.

prototype을 사용한다면 간단하게,

if (!Object.isArray(obj)) {
  return [obj];
} else {
  return obj;
}

댓글 없음:

댓글 쓰기