2017-05-05 6 views
0

restfullアーキテクチャでは、サービスエンドポイントは、100から600まで変化する可能性があるHTTPステータスコードを返す必要があります。したがって、レスポンスを使用して、Rest APIクラスからこれを行います。しかし、応答の正確なステータスコードとメッセージを送信するために、私は適切なステータスコードとメッセージで私の応答オブジェクトを返すサービスクラスを作成します。これは適切な方法ですか?レスポンスオブジェクト(JAX-RSクラス)をサービスクラスから返すことはできますか?RestベースのJava Webアプリケーションでサービスクラスからhttpステータスコードを返す適切な方法は何ですか?

答えて

0

あなたは使用することができます。ここ

javax.ws.rs.core.Responseは例

@GET 
@Path("cities") 
public Response getCities() { 

    List<City> cities = null; 
    try{ 
     cities = commonDelegate.getCities(); 
    } 
    catch(Exception e) 
    { 
     return Response.status(Response.Status.NO_CONTENT).entity("no city found").build(); // return 204 
    } 

    return Response.ok().entity(cities).build(); return 200 

} 
+0

こんにちはですが、あなたのソリューションであなたなしコンテンツfound.Thereは例外とステータスコードのための複数の理由になることはできませんステータスコードへのすべての例外をトレースしている必要があります対応する – grsdev7

+0

複数の条件をチェックして対応する応答を返すことができる使用例(Response.Statusを参照)(http://docs.oracle.com/javaee/7/api/javax/ws/rs/core/ Response.Status.html) –

+0

私は同意しますが、何度も例外が私たちに正確なステータスコードを表現する自由を与えることはできません送信する。 – grsdev7

関連する問題