問題タブ [payara-micro]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
80 参照

java - スペースを含む JAX-RS および RegEx @Path

here で説明されているように、エンコードされている場合は URI 内のスペースを使用できます。

JAX-RS (Jersey on Payara) は、パスの正規表現パターンで定義されたスペースを許可していないようです。

上記の正規表現は、encodedABC%20XYZと一致するはずですが、一致しません。

リクエスト:

内部的に、Payara は 404 をスローします。

(スペース) を削除%20すると成功します。

JAX-RS Spec 2.1 Finalの sectionでは3.3.2 Parameters、URI のデコードを明示的に無効にする必要があると記載されています。

ここに画像の説明を入力

セクション 3.4 では、パスにスペースを使用する例を示しています。

ここに画像の説明を入力

疑問に思っているのですが、正規表現パターンのスペースは同じように扱われますか? ジャージーの実装は間違っていますか、それともここで何か間違っていますか?

考えられる問題 (2008 年に報告、解決せずに 2009 年に終了): https://github.com/eclipse-ee4j/jersey/issues/446