問題タブ [jax-rs]

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 投票する
5 に答える
53142 参照

java - JAX-RS @PathParamスラッシュ、ハイフン、および等号を含む文字列を渡す方法

私はJAX-RSを初めて使用し、Jerseyを使用して単純なRESTfulWebサービスを構築しようとしています。

2つの質問があります。これらを明確にしてください:

  1. このURLのような単純なWebサービスを使用しようとしていますhttp://localhost:8080/SampleJersey/rest/inchi/InChIName

    InChINameは、このような文字列InChI=1S/C9H8O4/c1-6(10)13-8-5-3-2-4-7(8)9(11)12/h2- 5H,1H3,(H,11,12)です。これをとして渡すにはどうすればよいですか。@PathParam通常の文字列は正常に機能していますが、ここにはスラッシュ、ハイフン、およびコンマがあります。これらを無視するにはどうすればよいですか。引用符で囲んでみましたが、うまくいきませんでした。これはどのようにすればよいですか?

  2. これを別のWebサービスに渡す必要がありInChI、XMLを出力として返し、そのXML出力をWebサービスの出力として表示したいと思います。私が持っている場合@Produces("application/xml")、それは機能しますか?

これは私のコードです:

0 投票する
2 に答える
1024 参照

java - Unix の Web サービス。ディレクトリ構造はどうあるべきか

以前、Eclipse IDE、Tomcat、および JAX-RS ライブラリーを使用して、単純な RESTful Web サービスをローカルホスト上に作成する必要がありました。

Tomcatがインストールされている別のUNIXサーバーに同じものを移動しようとしています。Eclipse で行う「動的 Web プロジェクト」の作成と同等の方法で開始する方法がわかりません。Eclipse によって作成されたすべてのサブディレクトリを含むディレクトリを自分で作成する必要がありますか? このディレクトリは、Tomcat コンテナーの webapps フォルダーに配置する必要があります。META-INF と WEB-INF も自分で作成する必要がありますか?

Java クラスはどこに置くべきですか?

誰かがこれを明確にするか、同じことに関するドキュメントを教えてください。

0 投票する
3 に答える
6138 参照

http - HTTP 応答エンティティ タグとは何ですか?

具体的には JAX-RS (関連性があるかどうかはわかりません) には、応答に EntityTags を追加できるメソッドがあります。エンティティ タグとは具体的にどのようなもので、どのような実用的な方法で使用されますか?

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

java - JBoss RESTEasy - すべてのパス マッピングを表示

RESTEasy でマップされたパスのリストをダンプする方法はありますか? ドキュメントを検索したところ、 空になりました。

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

jaxb - JAXB マーシャリング スーパークラス

Resteasy サーバー アプリケーションを作成していますが、スーパークラスをマーシャリングするのに問題があります。次のようなコードがあります。

Employee クラスを XML にマーシャリングすると、次のようになります。

Person クラスから継承された name フィールドの出力はありません。

私は何を間違っていますか?

ありがとう、ラルフ

0 投票する
3 に答える
8948 参照

java - MessageBodyReaderが見つかりません

私はこのインターフェースを持っています:

MultipartOutputを返すメソッドを実装しました。Fiddlerからxmlクエリを投稿していますが、問題なく結果を受け取ります。

しかし、私は同じインターフェイスの統合テストを実行しました。同じオブジェクトを送信し、次のような応答を返します。

しかし、ここでは、統合テストから、奇妙なエラーが発生します。

コンテンツタイプmultipart/mixed; boundary="74c5b6b4-e820-452d-abea-4c56ffb514bb"およびタイプクラスorg.jboss.resteasy.plugins.providers.multipart.MultipartOutputのMessageBodyReaderが見つかりません

統合テストでのみこのエラーが発生するのはなぜですか?

PS:application / xmlをContentTypeとして送信するのではなく、マルチパートとして送信すると言う人もいます。もちろん、オブジェクトには必要な@XmlRootElementなどの注釈が付けられているため、これは誤りです。そうでない場合、FiddlerからのPOSTは機能しません。

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

string - 非常に長い文字列/ファイルをRESTWebservice JAX-RS Jerseyに渡す方法

XML 文字列を返す JAX-RS API を使用して RESTful Web サービスを作成しました。

この XML 文字列を受け取り、DOM を使用して解析し、必要な特定のものを抽出する別の RESTful Web サービスを作成しようとしています。XML 文字列はたまたま非常に長いので、@QueryParam または @PathParam として渡したくありません。

たとえば、その XML 文字列をファイルに書き込んだ場合、このファイルを取り込み、必要なものを抽出して結果を返すこのサービスを作成するにはどうすればよいでしょうか。実際にいくつかの文字列を抽出しようとしているので、Web サービスは最終的にこれらすべての文字列を含む配列を返す必要があります。

誰かが私がこれをどのように行うべきかについて光を当てることができますか.

前もって感謝します

0 投票する
3 に答える
10971 参照

java - カスタム応答+HTTPステータス?

プロジェクト用のRESTインターフェースがあります。1つのクラスに対して、xmlを投稿できるPOSTメソッドがあり、次のようなカスタム応答を返します。

<customResponse>Invalid email</customResponse>

投稿されたxmlからの電子メールが正しくなかった場合+さまざまな状況で定義した他のカスタムメッセージ。

これらすべてについて、HTTPステータスは自動的に200(OK)になります。それを変更する方法はありますか?

追伸:私は次のようなWebアプリケーションをスローできることを知っています:

しかし、この場合、私のカスタム応答は含まれていません。

したがって、カスタムエラー+400をhttp応答として返したいだけです。

前もって感謝します。

コメント後の更新:私の方法は次のとおりです。

あなたは私が私のカスタム応答を返すのを見るでしょう。単純なRESPONSEを返す場合は、STATUSを設定できますが、この場合は何も表示されません。

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

jax-rs - jax-rsでマルチパート/フォームファイルのアップロードを行うにはどうすればよいですか?

(具体的にはRESTeasy)

(単一のファイルの場合)次のようなメソッドシグネチャがあると便利です。

実行可能ですか?または私は夢を見ていますか?それほど単純ではないようです。

0 投票する
4 に答える
9834 参照

java - サブリソース@Pathに先頭のスラッシュがないJAX-RSサービスを作成する方法

いくつかのサブリソースを持つJAX-RSサービス(MyService)を作成しました。各サブリソースは、MySubResourceのサブクラスです。選択されるサブリソースクラスは、MyServiceパスで指定されたパラメータに基づいて選択されます。次に例を示します。

ここで、MyPlacesSubResourceとMyPeopleSubResourceはどちらもMySubResourceのサブクラスです。

MySubResourceは次のように定義されます。

結果は、応答のmimetypeに応じて、対応するMessageBodyWritersによって処理されます。

これは機能しますが、/ people / Bob/htmlや/people/ Bob / xmlのようなパスになります。ここで、私が本当に必要としているのは/people/Bob.htmlまたは/people/Bob.xmlです。

誰かが私がやりたいことを達成する方法を知っていますか?