9

JAX-RS実装JerseyはViewable、テンプレート名とモデルオブジェクトのコンテナーであるクラスを介してMVCスタイルのWebアプリケーションをサポートします。これは次のように使用されます

@GET
public Viewable get() {
  return new Viewable("/index", "FOO");
}

このアプローチでステータスコードを返すにはどうすればよいのでしょうか。上記は暗黙的にを返し200ますが、それはどのような場合でも適切ではありません。ステータスコードを明示的に設定する方法はありますか?

4

2 に答える 2

15

Responseを含む正しいステータスコードとヘッダーを含むセットアップを返す必要がありますViewable。例:

@GET
public Response get() {
  return Response.status(myCode).entity(new Viewable("/index", "FOO")).build();
}
于 2010-07-29T11:32:30.483 に答える
5

うーん、ジャージでカスタムResponseオブジェクトを作成できます。これにより、200が返されます。

@GET
public Response get() {
    URI uri=new URI("http://nohost/context");
    Viewable viewable=new Viewable("/index", "FOO");
    return Response.ok(viewable).build();
}

別のものを返すには、このアプローチを使用します。

@GET
public Response get() {
    int statusCode=204;
    Viewable myViewable=new Viewable("/index","FOO");
    return Response.status(statusCode).entity(myViewable).build();
}

お役に立てば幸いです。

于 2010-07-29T11:30:57.553 に答える