2012-08-17 4 views
0

나는 목록을 반환하는 RESTful 웹 서비스를 작성했다. 클래스 Word는 루트 요소로 주석 처리됩니다.415 RESTful 웹 서비스에서 지원되지 않는 미디어 유형

나는이 클라이언트를 테스트하여 415 Unsupported MediaType을 생성했습니다. 다른 사람이 도움이 될 수 있도록 도움을 줄 수 있습니까?

@POST 
    @Produces(MediaType.APPLICATION_JSON) 
    @Consumes(MediaType.APPLICATION_JSON) 
    @Path("getCategoryWordListFromJSON") 
    public List<Word> getLearnWordListByCategory(JSONObject jsonObject) { 
     List<Word> wordList = new ArrayList<Word>(); 
     try { 
      String category = (String) jsonObject.get("category"); 
      LOGGER.log(Level.INFO, category); 
      LearnWordListDao wordListDao = new LearnWordListDaoImpl(); 
      wordList.addAll(wordListDao.getCategoryListFor(category)); 
     } catch (JSONException e) { 
      LOGGER.log(Level.INFO, e.getMessage()); 
     } 
     return wordList; 
    } 
+0

json 라이브러리가 아닌 Jettison 기반'JSONObject '만 지원됩니다. jettison 'JSONObject'로 전환하여 시도하십시오. –

+0

요청 헤더의 내용 유형은'application/json'이어야합니다. –

+0

정확히 어떻게 웹 서비스를 호출합니까? 대부분의 경우 클라이언트는'Content-Type : application/json' 헤더를 보내지 않습니다. –

답변

2

HiAllwyn는

는 목록의 반환의 여러 가지 방법이 있습니다. 여기서는 코드에 제공된대로 List 객체를 구문 분석 할 수 없습니다. 시도해보십시오 .... .... 작동합니다 .... :)

+0

return Response.ok(). 엔터티 (wordList.toArray (새 Word [wordList.size()])). 하나의 유형입니다 ... – NamingException

관련 문제