問題タブ [grizzly]
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.
servlets - JerseyRESTサービスを実行しているGrizzlyサーバーでフィルターを使用する
Grizzlyを使用して、Jerseyを使用して開発したRESTサービスを実行するサーバーを作成しようとしています。私は以下を使用してGrizzlyサーバーを作成しています:
私が見つけたすべての例が示唆しているようです。これは問題ありません。サーバーが起動し、着信要求をリソースクラスに転送できます。
ただし、サービスの実装では、サーブレットフィルタを使用する必要があります。ServletAdapter
Grizzlyは、クラスを介して、フィルターおよびその他の同様のサーブレット関連の構成オプションの定義をサポートしているようです。私の問題は、com.sun.jersey.api.container.grizzly.GrizzlyWebContainerFactory
Jersey統合を提供するを使用するときにフィルターを定義する方法を理解できないことです。
何か案は?
java - Mule と Jersey に Grizzly Embedded Server を使用する方法
私は現在、いくつかのコードをテストするために、Grizzly 組み込みサーバーで JerseyTest を使用しています。適切なリソースを指すように、非常に簡単な構成をいくつか行います。
これは正常に機能し、Jersey コンポーネントは利用可能で、期待どおりに機能しています。
現在、これらの Jersey 呼び出しのいくつかに Mule 機能を追加しようとしていますが、Mule は Grizzly によって適切に初期化/構成されていません。この種のセットアップを実行した人はいますか? Mule を適切に初期化するには、JerseyTest/GrizzlyWebServer でどのような追加設定を行う必要がありますか?
java - Grizzly 上の Jersey で JaaS を使用する
JaaS 認証を REST に追加するためのシンプルで柔軟な方法を見つけようとしています。正しい方向に導くと思われる投稿を見つけました(StevenCの回答を参照)。Jerseyコード自体ではなく、サーブレットコンテナがセキュリティを担当しているようです。このアイデアは気に入っていますが、実装について少しガイダンスが必要です。
Grizzly は私のサーブレット コンテナーであり、認証に JaaS を使用するように構成したいと考えています。今のところ、単純なユーザー名とパスワードの組み合わせで問題ありません。ユーザー名とパスワードのペアをコードに直接ハードコーディングしても問題ありません。JaaS を使用している限り、後で詳細を調整できます。
HTTP 経由で送信されるものに関しては、Cookie を保存することが、これをすべて機能させる最も簡単な方法であると考えています。認証ジャンクをジャージーコードから遠ざけるために必要なものは何でも。
ここまでで Grizzly を起動するコードは次のとおりです。
このプロセス全体が機能する場合、ユーザーのアクセス許可を確認する最善の方法は何ですか? おそらく、REST コードで特定の時点でアクセス許可を実際に検証したいと思うでしょう。私は正しい軌道に乗っていますか?もっと簡単な方法はありますか?チュートリアルへのリンクは素晴らしい答えです。「私はそれを行い、うまくいきました」のような答えでさえ、私が正しい方向に向かっているという温かいあいまいさを私に与えるでしょう.
助けてくれてありがとう。
編集:StevenCのコメントに対するいくつかの説明:
- リソースを保護するために、引き続きサーブレット フィルタを使用しますか? 認証の詳細をジャージー コードから分離できるものは何でも使用します。サーブレット フィルターである必要はありません。
- 「JaaS を使用するように構成する」とはどういう意味ですか? 当初の計画は、JaaS を使用して現在の API を保護することでした。次のフェーズは、API 全体をオンラインで利用できるようにすることです。API 呼び出しの周りに Jersey ラッパーを配置することは理にかなっているように見えましたが、Grizzly によって処理された認証を維持します。その時点で、Grizzly は JaaS とやり取りする必要があると思います。
- grizzly にリソースを保護させるだけの構成が必要だと思いますか? 私は、ユーザーを認証し、ロールに基づいて、ユーザーがリソースにアクセスすることを承認する 2 段階のプロセスを検討していました。アイデアは、Grizzly が (JaaS を使用して) 認証を処理し、Jersey が承認を処理するようにすることでした。
- 「RESTful リソースで Cookie を使用する必要はないと思います。」Cookie の使用を削除することは素晴らしいことですが、どうすれば実現できるのでしょうか? システムは、ユーザーが認証されているかどうかを知る必要があります。呼び出しごとにユーザー名/パスワードなどを渡すように依頼したくありません。すべての呼び出しでパラメーターとしてセッション トークンを渡すことでさえ、「醜い」ように見えます。
また、私は REST にかなり慣れていないことに注意してください。私はSOAPを数年間やっているので、「SOAPバイアス」があり、誰もが使用する明白で単純なソリューションから目がくらんでいる可能性があります. もっと簡単な方法がある場合は、お気軽に共有してください。私はできるだけ多くのことを学ぼうとしています。
java - JavaでローカルTCPポートが開いていないことを確認する
ローカル ポートがまだ開いていないことを確認する簡単な方法はありますか。一部の TCP ソケット サーバー (Grizzly など) は、デフォルトではこのチェックを行わないようです。このチェックが欠落している場合、サーバーは起動して応答しているように見えますが、クライアント コードはシャットダウンされていない古いサーバーに接続しているだけです。これは非常に悪いことがあります!
ポートが別のプロセスによってまだ使用されていないことを確認できる Java コードの簡単な行はありますか?
java - Grizzly (GlassFish) および Tomcat での URI の最大長
Tomcat と Grizzly (GlassFish 3) の URI に最大長 (デフォルト値ではない) はありますか?
大きな GET リクエストを受信できる RESTful API を作成したいと考えています。
java - 瓶の中でjksを使用するようにGrizzlyのキーストアを設定する
com.sun.grizzly.SSLConfig.setKeyStoreFile()を使用してGrizzlyのSSLを設定しようとしています。入力として文字列のみを受け取ります(InputStreamまたはFileは取りません)。JARファイル内にあるjksファイルを使用したい。jarパス(C:\ dir \ my.jar!\ resources \ my.jksなど)に文字列を渡すと、失敗します。JARからファイルを解凍する以外に、そのJKSをグリズリーに使用するにはどうすればよいですか。
hibernate - ジャージの安らぎ + グリズリー サーバー + 休止状態
ジャージ+グリズリーサーバーを立ち上げることができます。ただし、「SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory;」の実行中に問題が発生します。エラーは「重大: サービス例外: org.hibernate.HibernateException: /hibernate.cfg.xml が見つかりません」
.. hibernate を作成する方法を知っている人は、hibernate.cfg.xml の場所にアクセスできます。
java - Grizzly が JaaS の単純な HTTP AUTH を実行できるようにする
Grizzly HTTP サーバーで単純な HTTP AUTH の JaaS を許可するにはどうすればよいですか? そこにコード/サンプルが表示されません: StackOverflow に別の投稿があり、Grizzly で jaaS が利用可能であると直接想定していますが、それを追加する方法については説明していません。
java - Grizzlyhttpサーバーが一部のリクエストに失敗する
テストを高速化するために、Tomcatからジャージアプリケーションを実行するために、グリズリーWebサーバーを作成しました。
私はグリズリーの初心者ですが、ネットを調べて、グリズリーのWebサーバーを稼働日以内に稼働させるために、いくつかのコード行をまとめました:)
残念ながら、私のクラスは同時リクエストでいくつかの問題を抱えています。多くの場合、1つ以上が不可解なNullPointerExceptionで失敗します。
トラブルは通常、Webページを更新するときに発生します。この場合、grizzlyはキャッシュされていない約25個のファイルを返す必要があります。これは登録された例外です:
静的ファイルは私のクラスから提供されますが、ログには、everithingは問題なく、tomcatでアプリケーションを使用するとすべて問題がないことが示されます。私は本当にこの問題を解決する方法を知りません。
これは私がインターネットからスタートアッププロジェクトに作成/コピーしたコードです:
任意の提案をいただければ幸いです。
チャオ、ダビデ。