6

私はプロトタイプのJersey (JAX-RS)アプリケーションを書いていて、application/x-www-form-urlencoded投稿をredirect-after-POST方法論で処理したいと思っていました。

成功時にアプリケーション ルートでホストされている html ページにリダイレクトしたいのですが、 Jersey のサーブレット ルートから抜け出せないようです。

新しいユーザーを作成できるリソースの例を次に示します。

必要な URI: /jersey-test/user.html

取得する URI: /jersey-test/ r /user.html

@POST
@Consumes({MediaType.APPLICATION_FORM_URLENCODED})
public Response putUser(@Context UriInfo uriInfo, 
    MultivaluedMap<String, String> formParams) {

    // snip... do work and insert user here...

    URI uri = uriInfo.getBaseUriBuilder().path("user.html").build();
    return Response.seeOther(uri).build();
}

私の web.xml からの関連スニペット:

<web-app ...>
  <display-name>jersey-test</display-name>
  ...
  <servlet>
    <servlet-name>Jersey REST Service</servlet-name>
    <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
    ...
  </servlet>
  ...
  <servlet-mapping>
    <servlet-name>Jersey REST Service</servlet-name>
    <url-pattern>/r/*</url-pattern>
  </servlet-mapping>
</web-app>
4

1 に答える 1

8

次のようにパスを割り当てます。

URI uri = uriInfo.getBaseUriBuilder().path("../user.html").build();
于 2013-02-28T22:53:58.400 に答える