問題タブ [embedded-jetty]
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.
java - 埋め込みの桟橋アプリケーションが jar から機能しない
次のコードがあります。
パッケージにMain
クラスがあります。com.domain
jsp と html はcom.domain.webapps.app
パッケージに含まれています。
Netbeans 内 (または展開java -cp <classpath> com.domain.Main
された jar 上) で実行すると、アプリケーションは完全に機能します。
jar ( java -jar app.jar
) を実行すると、の内容がcom.domain.webapps.app
に抽出される/tmp/Jetty_something/webapp/
ため、フル パスは次のようになります。/tmp/Jetty_something/webapp/com/domain/webapps/app/
しかし、私が をリクエストするとhttp://localhost:9090/app/file.jsp
、Jetty は (間違った場所からファイルを取得しようとします/tmp/Jetty_something/webapp/file.jsp
:-( )
どこで何ができますか?
Jetty のバージョンは 6.1.26 です
java - JettyでJSPサーブレットを無効にする
SpringwithJettyを使用しています。これまでJSPを使用したことはありませんが、JSPを使用するサードパーティのサーブレットがあります。
Jettyが「jsp」サーブレットをロードしようとしていることがログに表示されます。ただし、すべてのリクエストをSpringsディスパッチャーサーブレットに送信する必要があります。
Jettyが*.jspをインターセプトするのを防ぐにはどうすればよいですか?
web.xml
非JSPリクエストのJettyログ:
JSPリクエストのJettyログ:
jetty - jettyサーバーの接続/リクエストタイムアウトを設定するには?
次のように、アプリケーション内で組み込みの jetty サーバー (jetty 6.1.24) を実行しています。
タイムアウト値 (2 秒) を設定して、handler.handle() メソッドが 2 秒以上かかる場合、jetty サーバーがタイムアウトし、408 http コード (要求タイムアウト) でクライアントに応答するようにします。
これは、アプリケーションがクライアント リクエストを長時間保持せず、常に 2 秒以内に応答することを保証するためです。
私はいくつかの調査を行い、「connector.setMaxIdleTime(2000);」でテストしました。しかし、うまくいきません。
wicket - buildrでhtmlファイルをjar/warにパッケージ化する方法は?
組み込みの Jetty + Wicket アプリに取り組んでおり、buildr を使用しています。現在、Buildr は HTML ファイル (私の *.java ファイルと一緒にメイン ソース フォルダーにある) を jar に含めていません。buildr にそれらをコンパイル/パッケージ ステップに含めるように指示するにはどうすればよいですか?
提案をありがとう、私は近いと思います。おそらく、私が尋ねるべき質問は、.HTML ファイルを target/classes/ サブディレクトリの適切な場所に配置する方法です。target/classes フォルダー内の .html ファイルを取得できれば、package(:jar) でアーカイブされることを確認しました。私はそれを見始めるつもりです。
java - プログラムによる Jetty のシャットダウン
組み込みのjettyサーバーをプログラムでシャットダウンする方法は?
次のようにjettyサーバーを起動します。
ここで、http: //127.0.0.1 :8090/shutdownなどのリクエストからシャットダウンしたいのですが、 どうすればきれいにできますか?
一般的に提案されている解決策は、スレッドを作成し、このスレッドから server.stop() を呼び出すことです。しかし、サーブレットがシャットダウン要求の処理を完了したことを確認するために、Thread.sleep() の呼び出しが必要になる可能性があります。
java - Jettyが受け入れる接続の数を制限するにはどうすればよいですか?
Jetty 7.2.2を実行していて、処理する接続の数を制限したいので、制限(たとえば、5000)に達すると、接続の拒否を開始します。
残念ながら、すべてConnectors
が先に進んで着信接続をできるだけ速く受け入れ、構成されたスレッドプールにディスパッチするように見えます。
私の問題は、制約のある環境で実行していて、8Kのファイル記述子にしかアクセスできないことです。大量の接続が着信すると、ファイル記述子がすぐに不足し、一貫性のない状態になる可能性があります。
私が持っているオプションの1つは、HTTPを返すことです503 Service Unavailable
が、それでも接続を受け入れて応答する必要があります。おそらくサーブレットフィルタを作成することで、どこかで着信接続の数を追跡する必要があります。
これに対するより良い解決策はありますか?
java - 突堤の支柱のプログラム構成
Jetty内でstruts2をプログラムで構成しようとしていますが、多くの問題が発生しています。
これらは「ユニット」テスト用であるため、Springやその他の「DIフレームワーク」は使用したくありません。
これが私が持っているものです-(これは桟橋の周りに私のラッパーを使用しているので、メソッド呼び出しは桟橋のものと完全には一致しませんが、あなたは簡単にアイデアを得ることができます)
それは失敗し、春が設定されていないと不平を言います。FilterDispatcherのサブクラスをいじったり、MockConfigurationを返したりすることを試みましたが、あまり進歩していません...
したがって、ActionMapperを実装する必要があります。実装すると、getRuntimeConfigurationのMockConfigurationからUOEを取得します。これはおそらく間違ったパスだと思います...
誰かがこれをしたならば、どんなリードでも大いに感謝するでしょう。
ありがとう!!
ジェームズ
wicket - Jetty 6.1.26、Weld 1.1.1 を使用したシームウィケット
Jetty 6.1.26、Weld 1.1.1、seam-wicket 3.0.0、Wicket 1.4.17 が埋め込まれた seam-wicket を試しています。
BeanManager が見つからないようにする seam-wicket バグを修正した後 (JNDI が機能せず、ServletContext からプルする必要があります - そのために誰かのクラスを使用しました)。
次に、RandomNumber の例を試してみました
http://docs.jboss.org/weld/reference/1.1.0.Final/en-US/html_single/#d0e948
そしてWicketコンポーネントで@Injectしようとしました
何も機能しませんでした。毎回これを取得しました:
では、CDI を機能させるにはどうすればよいでしょうか。アイデアをありがとう。
jsp - jar でクラスパスが指定されている場合、埋め込み Jetty が JSP タグライブラリのロードに失敗する
同様の質問では対処できないと思われる問題に直面しています。
SpringMVC、JSP、およびタグライブラリを使用して、Jetty を埋め込むアプリがあります。Maven プラグインを使用して jar を生成し、依存するすべての jar をディレクトリにバンドルして、マニフェストを作成します。
jar (例: java -jar app.jar) を使用してアプリを実行すると、指定する JSP<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
またはその他の taglib をロードしようとするまで、すべて正常に動作します。
java を実行し、コマンド ラインでクラスパスを指定し、メイン クラスに明示的に名前を付けると、すべて機能します。アプリの jar MANIFEST.MF 内の Class-Path が正しいことを確認しました。
これまでのところ、回避したい 2 つの回避策を考え出しました。起動スクリプトでクラスパスを生成し、コマンド ラインに配置します。または、Jetty jsp-api パッケージから .tld ファイルを取り出して、taglibs として指定できる通常のファイルとして使用できるようにします。
私の理解では、Jasper は tld ファイルを探しているすべての Jar のすべてのクラスパスを引き裂くことになっていますか? コマンドラインでjarをクラスパスの一部として指定すると機能しますが、アプリのjarでクラスパスを指定すると失敗します。
gwt - GWT ボタンによる Jetty での認証
SmartGWT を使用してログイン ページを作成しようとしていますが、Eclipse 用の GWT プラグインが組み込まれた Jetty サーバーでフォーム認証を機能させようとしています。TextItems を使用してユーザー名とパスワードを取得するページがあり、ログイン ボタンが押されたら、認証を行う必要があります。
カスタム レルムを作成するように jetty-web.xml ファイルをセットアップしましたが、現在は何もしていませんが、メソッドが呼び出されていることを通知します。私は残りを理解できると確信しています。
jetty-web.xml
[編集 05/18 午後 1:16]
私の CustomRealm は Jetty の HashUserRealm を拡張しますが、それが問題を引き起こす可能性があるかどうかはわかりませんが、それについても言及したいと思います。
また、web.xml ファイルにセキュリティ制約を設定しました
web.xml スニペット
私はこの種のことをするのにかなり慣れていません。制約が必要かどうかわかりません。コメントを外すと、ページがまったく読み込まれないため、コメントアウトされています。
私が読んだことから、Jetty でセキュリティ制約を使用すると、ブラウザーのログイン ダイアログがポップアップするはずであることがわかりました。それは私が望んでいることではありませんし、実際にはそうなりません。だから私はそこで何が間違っているのか分かりません。
GWT で RequestBuilder クラスも見つけましたが、それは私がやりたいことをしていないようです。カスタム領域で認証メソッドを何らかの方法で呼び出すには、ログイン ボタンが必要です。これを行う方法があるかどうか疑問に思っていますか?または、少なくとも正しい方向に向けられます。なぜなら、私が探していて何も見つからなかったからです。
前もって感謝します。
[編集 05/18 8:56am] ピーターの提案の後、私の RequestBuilder がどのように設定されているかを追加
[再更新] auth-constraint がコメント解除されている場合、onModuleLoad メソッドは呼び出されません。なぜそれがそうしているのか知っている人はいますか?