2

REST Web サービスに Java と Jersey を使用しています。put整数値を 1 つだけ取るメソッドが必要です。この整数値から、ビジネス ロジックを使用してデータベースを更新できます。カスタム DTOには複数の情報が含まれていることが多いため、通常、PUT からカスタムDTOを渡します。1 つの値だけにカスタム DTO を作成するのは少し無駄に思えます。この変数を PUT で @PathParam として渡すことは可能ですか?

私が試してみました

@PUT
@Path("apple/{pearId}")
public void doStuff(@PathParam("pearId") Integer pearId) {...}

しかし、私が渡すとこれは機能しません

http://myurl/apple/123

REST クライアントを使用してこれを PUT しようとしましたが、最終的にはHTTP Status 403

変数を PUT @PathParam として渡すことはできますか?

ありがとう

更新: エラーの詳細

エラーは REST クライアントからのものです

HTTP Status 403 -
type Status report
message
   descriptionAccess to the specified resource () has been forbidden

ここでロギングを追加して、実際にメソッドに入るかどうかを確認します

4

1 に答える 1

2

PUT で @PathParam を確実に使用できます。HTTP 403 はForbiddenを意味します。このエラーは、おそらくジャージーからのものではありません。そのエラーはどこから来ていますか?あなたのコードはそのエラーをスローしますか?

于 2012-12-04T20:40:56.180 に答える