2016-04-27 9 views
0

あなたの助けが必要です。 私はpostmanを使用していて、JSON形式の情報を取得しようとしています。 メッセージの正しい形式の代わりに、私はこの結果を得ました - > "[]"JSONでデータを作成

私は何のエラーもなく、私は要求された情報をコンソールに印刷できますが、ブラウザではできません。私は誰が私に手掛かりを与えることができることを望む..コンテンツタイプヘッダが設定されている場合

@GET 
@Path("/{messager_id}") 
@Produces(MediaType.APPLICATION_JSON) 
public String GetMessageById(@PathParam("messager_id") long id){ 

    String message = new MessageService().getMessageById(id); 

    return message; 
} 
+0

メッセージにデータが含まれていますか? –

+0

はい。 - > "[]"記号だけ! –

+0

の代わりに:名前、姓、MessageDate .. –

答えて

0

私はまず、いくつかのWebサービスクライアントをDHC RESTクライアント(Chromeブラウザのアドオン)として使用することをお勧めします。それを使用し、Webサービスの実際の動作を確認してください。クライアントがjsonオブジェクトを取得して空になったら、サーバーが空のデータを生成していることを確認します。文字列messageを記録して、データを返すことを確認します。正しければ、返品方法を確認してください。 Webサービスの返品の例は次のとおりです。

return Response.ok(message, MediaType.APPLICATION_JSON).build(); 
+0

はいhasEntity = false .. –

+0

サーバーが空のデータを生成する理由を理解できません。 ここで私のポストメソッド.. –

+0

MessageService()がJSONとしてメッセージを返さない場合はあなたは魔法によってJSON構造として変換されることを期待しています。あなたの答え 'hasEntity = false'は私には意味がありません。私の投稿でやろうとした編集もありません。 – JorgeHortelano

0

がチェック:Content-type = application/json。追加情報を提供してください。

+0

私はContent-type = application/jsonを持っています。 –

+0

どのような情報が必要ですか? –

+0

コンソールにデータが印刷される方法。 jersey restを使用している場合は、レスポンスを** Response.ok(message).build(**)として返し、** String型の代わりに** javax.ws.rs.core.Response **型に戻り値を変更します。 *。 –

0

確認するべき点は、MessageService.getMessageById(id)がデータを返すことです。

+0

私はコンソールにsystem.outでそれを行い、正しいメッセージを得ました! –

+0

ブラウザではJSON形式ではありません。何ができますか? –

関連する問題