0

より具体的に言うと、現在、10 進数の区切り文字 (コンマとドット) に問題があります。URL パラメーターに間違った区切り文字が含まれている場合、Web サービスは 404 を返します。しかし、適切な解決策を見つけたいと思います。 JSON の読み取り/書き込みも処理します。

注:この他の質問 で答えを試しましたが、Jersey jarにないクラス(If、QuantityXmlAdapterおよびNumberPersonalizedXmlAdapter)を参照しており、Googleでそれらについての手がかりを見つけることができません.

4

1 に答える 1

1

私はあなたの質問をこのように読みました。

あなたの方法

@GET
@Path('/resource/{decimal}')
public Response getResoureWithDecimal(@PathParam("decimal") double decimal)

あなたの要求

GET /resource/1,2

明らかに1,2Java ではなく、doubleJAX-RS には Java に変換する方法がありません。

考えられる解決策

パラメーターの型としてa を使用Stringし、独自のコンバーターで変換します。

@GET
@Path('/resource/{decimal}')
public Response getResoureWithDecimal(@PathParam("decimal") String decimal) {
  double decimalAsDouble = convertStringWithCommaToDouble(decimal);
  // ...
}

の実装はconvertStringWithCommaToDouble(String)あなた次第です。

于 2013-10-19T19:35:52.950 に答える