問題タブ [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 - Embedded Jettyは、各メッセージを2回処理します
私は可能な限り簡単な方法でJettyを使おうとしています。Jetty@Eclipseのドキュメントからウォークスルーを実行することから始めました。これは基本的に次のようになります。
問題は、ハンドラーがリクエストごとに2回呼び出されることです。何か違いがあれば、シミュレーションにChromeとhttp:// localhost:8080を使用しています。Jettyは2つのjarとして埋め込まれています。
- jetty-all-7.0.2.v20100331.jar
- サーブレット-api-2.5.jar
私はここで何が間違っている/欠けているのですか?
java - spring mvc アプリケーションを jetty で埋め込む方法
Spring MVC アプリケーションが動作しており (jboss にデプロイしたときに必要なすべてを実行しています)、jar からアプリケーションを起動する方法を探しています。私が考えたことは、jar を起動するときに、アプリケーションを実行できるようにするために、まず何らかの種類の Web サーバーを起動する必要があるということです。
そして、私は桟橋とのたくさんの組み合わせのように試しました(すでに約2日失われました)、そして私はそれらのすべてに失敗しました。主にhttps://stackoverflow.com/tags/embedded-jetty/hotからの提案です
私の主な弱点は、サーブレットやコンテキストなどについて完全に理解していないことです。グーグル検索をブラウズしているときに定期的に目にする用語は、すでに解決策を見つけたかもしれませんが、それを理解していませんでした。
誰かが似たようなことをしましたか?はい、私は tomcat について同様の質問をしました:
eclipse - Eclipse IDE で jsp を使用して動的 Web プロジェクトに jetty を埋め込む方法
wicket は JSP を使用しないため、Wicket プロジェクトに埋め込み桟橋を問題なく使用しています。組み込みの jetty アプリケーション サーバーを使用して基本的な動的 Web アプリケーションを作成するタスクに出くわすまでは。
デフォルトでは、jetty は JSP をサポートしていません。また、他にも選択できるサーブレット コンテナーがいくつかあることも認識しています。しかし、このタスクでは、Jetty を使用して大規模なプロジェクトで大きな成功を収めているため、強力でシンプルな Web 開発が Jetty をどのように使用しているかを示したいと思います。
IDE として Eclipse Helios を使用しており、次の jar をクラスパスに追加しました
- junit-4.8.1.jar
- jetty-6.1.25.jar
- 桟橋管理-6.1.25.jar
- jetty-util-6.1.25.jar
- log4j-1.2.14.jar
- サーブレット-api-2.5-6.1.4.jar
- jsp-2.1-6.1.5.jar
- javax.servlet.jar
ここに、埋め込まれた桟橋を開始するために使用するコードがあります
そして、以下はエラーメッセージです
2011-02-11 09:18:12.953:INFO:: org.mortbay.log.StdErrLog 経由で STDERR にログを記録しています 組み込みの JETTY サーバーを開始し、任意のキーを押して停止します 2011-02-11 09:18:13.000:INFO::jetty -6.1.25 2011-02-11 09:18:13.156:WARN::失敗した jsp: java.lang.NoClassDefFoundError: javax/servlet/jsp/JspApplicationContext 2011-02-11 09:18:13.171:WARN::失敗した組織.mortbay.jetty.webapp.WebAppContext@76cbf7{/,WebContent}: java.lang.NoClassDefFoundError: javax/servlet/jsp/JspApplicationContext 2011-02-11 09:18:13.171:WARN::エラー開始ハンドラ java.lang. NoClassDefFoundError: javax/servlet/jsp/JspApplicationContext at org.apache.jasper.compiler.JspRuntimeContext.(JspRuntimeContext.java:103) at org.apache.jasper.servlet.JspServlet.init(JspServlet.java:134) at org.mortbay org.mortbay の .jetty.servlet.ServletHolder.initServlet(ServletHolder.java:440)。jetty.servlet.ServletHolder.doStart(ServletHolder.java:263) at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:685) org.mortbay.jetty.servlet.Context.startContext(Context.java:140) で org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1272) で org.mortbay.jetty.handler.ContextHandler.doStart で(ContextHandler.java:517) org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:489) で org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) で org.mortbay.jetty. org.mortbay.jetty.Server.doStart(Server.java:224) の handler.HandlerWrapper.doStart(HandlerWrapper.java:130) org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) com.pldt.embededserver.Start.main (Start.java:36) 2011-02-11 09:18:13.203:INFO::Started SocketConnector@0.0.0.0:8080 で
皆さんがこれで私を助けてくれることを願っています。私はとてもがっかりしています (これに関する jetty のドキュメントに) このような非常に単純なタスクは、すべてのタスクの中で最も単純なタスク (JSP を使用して Web アプリケーションを実行する方法) でさえも貧弱なドキュメントのために非常に混乱し、時間がかかることが判明しました。 Java を勉強したい人や、jetty をサーブレット コンテナーと考えている人にとっては、特に難しいでしょう。
前もって感謝します。
servlets - 開発のための最もクリーンな Jetty 構成?
編集:私は自分の意図を明確にする必要があると思います...
コードの書き込み >> ビルド WAR >> デプロイ >> 更新 >> 繰り返しの開発反復サイクルを簡素化しようとしています。IDE から比較的独立したいと考えています (つまり、Eclipse や IntelliJ プラグインに作業を任せたくありません)。コード/静的ファイルを編集し、必要に応じて WAR ソース ディレクトリにビルドし、一元化された Jetty インストールへのコマンド ライン呼び出しとしてセットアップを実行/デバッグできるようにしたいと考えています。
後で、一般的に同じセットアップを使用して実際の展開を実行できるようにしたいと思いますが、パッケージ化された WAR を使用します。IDE または Jetty に固有のアプリ コードを使用したくありません。
おそらく、この質問をするより良い方法は、開発/デバッグ アプリ サーバーとして Jetty を使用する最もクリーンな方法は何ですか?
最小限の Jetty 7 をインストールしたいとします。XML 構成をできる限り最小限に抑えたいと考えています。生のサーブレット API だけが必要で、JSP やフィルタリングなどは必要ありません。カスタム サーブレットをいくつか用意し、静的ファイルが存在する場合はそれらを提供できるようにしたいだけです。これが唯一の WAR となり、特定のポートのルートとして配置されます。
理想的には、展開を容易にするために、Jetty ディレクトリを標準のダウンロードだけにし、WAR / XML 構成をこれらの標準の Jetty ファイルとは別にしたいと考えています。Jetty の呼び出しでは、この最小限の XML を渡して実行したいと思います。
ドキュメントはいたるところにあり、その多くは Jetty 6 に関するものか、他のさまざまなパッケージ (Spring など) に固有のものであることがわかりました。この最小限の構成があれば、その上に追加の抽象化を追加すると、はるかにクリーンになると思います。また、組み込みの Jetty シナリオをよりクリーンに処理できるようになります。
この SO の質問は、この XML が役立つシナリオの例です。コマンド ラインのみを使用して Jetty Run War
この 1 つの WAR ロケーションとそれを提供するホスト/ポートを指定するために必要な最小限の XML は何でしょうか?
スニペットやリンクをお寄せいただきありがとうございます。
jetty - CruiseControl: 起動しない - 理由を特定する方法は?
CruiseControl が起動しなくなりました (既知の変更は、新しいメモリをマシンに追加したことのみです)。
わかりました、開始されたようです: Web GUI を呼び出すと、以下がもたらされます:
ログ ファイルには 2 つの例外があります。
と:
何か案は?何が変更された可能性がありますか?ファイルが破損していますか?
jetty - Jettyが埋め込まれたタペストリーウェブアプリ
Jettyが埋め込まれたスタンドアロン(java -jar経由)で実行するようにTapestry5プロジェクトを構成するにはどうすればよいですか?
Tapestry5、Jetty、サーブレット/ハンドラーの構成/ドットを接続するために必要なものに関する短い「レシピ」を探しています...
いくつかの点を見てきました:実行可能戦争を作成する方法、タペストリーの構成(サーブレットフィルターとしてのタペストリーを参照)
編集:サーバーの状況により、スタンドアロンで実行されているWebアプリについて考えています。Jettyを埋め込む必要はありませんが、安定したアプリサーバーに頼ることはできません。まだレシピを探しているので、行き止まりにあまり時間をかけません...
また、Jenkins(Hudson)が更新をデプロイするときにサーバーを自動的に停止および起動できるようにしたいのですが、それがJetty、f.exでできることに影響するかどうかはわかりません。
java - Java サーブレットのデプロイメント - 埋め込むかどうか - Tomcat/Jetty
実稼働環境にデプロイされた Web アプリケーションがいくつかあります。Tomcat をサーブレット エンジンとして約 10 年間使用しています。deploy-a-war-into-Tomcat モデルから Jetty モデルを埋め込むことに移行することを検討しています。
これらの webapps は複数のサーバーに展開され、一部は水平方向にスケーリングされます (nginx IP ハッシュ ベースのパーティショニングを使用)。
いくつかの利点があります。
特定の Web アプリケーション用にサーブレット エンジンを構成できます (いくつかの異なる Web アプリケーションを実行している Tomcat 用の一般的な構成を使用する代わりに)
同じホストで複数の Jetty インスタンス (異なるポートでリッスンするように構成) を実行することで、Web アプリケーションを水平方向にスケーリングするのが簡単になります。Tomcatでもこれを行うことができました(過去に同じホストで複数のTomcatインスタンスを実行しました)が、展開にDebianパッケージ(.debアーカイブ)を使用するようになりました.Tomcatを使用して複数のTomcatを実行するのは簡単ではありませんこの方法。
私の展開パッケージ (.deb) はビルド時に「完全」です。つまり、Tomcat インスタンスが正しく構成されていることを確認する必要はありません。
そして短所:
サーバー上で実行されるサーブレット エンジンのインスタンスが増えるということは、より多くのリソースが使用されることを意味します。
Jetty を使用したことはありません。Web アプリケーションで Tomcat 固有の処理が行われているとは思いませんが、よくわかりません。
私の主な関心事は、Jetty が使用するリソースの量です。1 つの Tomcat インスタンスで 4 つの Web アプリケーションを実行している場合、4 つの Jetty インスタンスを実行すると、リソース (メモリ/プロセッサ) にどのような違いがありますか?
この質問はおそらくあまりにもオープンエンドですが、何かを見落としているのか、Tomcat から (組み込みの) Jetty に移行した経験がある人がいるかどうか知りたいです。
jetty - Jetty : 登録済みのサーブレットを動的に削除する
WebAppContext で jetty サーバーを作成して起動しました。addServlet メソッドを使用して、サーブレットを WebAppContext に追加することもできます。しかし、このサーブレットを動的に削除したいと考えています。これどうやってするの ?removeServlet() のようなものは、WebAppContext では提供されていません。
servlets - Jetty httpセッションは常にnullです(Embedded Container、ServletHolder)
組み込みサーブレット(7.3.0 v20110203)コンテナでHTTPセッションを使用する単純なサーブレットを実装しようとしています。桟橋を開始するには、次のコードを使用します。
サーブレットはとのセッションを取得します
それにいくつかのデータを保存します。次のリクエストで、次のコードでセッションを取得します。
その場合、セッションは常にnullになります。
この特定の問題に関する情報はインターネット上で見つかりませんでした。SessionManagerまたはSessionIdManagerの設定も試しましたが、何も変わらないようです。ここでSessionManager、SessionIdManager、またはSessionHandlerについて何かが足りないのではないかと思いますが、これは単なる推測です。
jetty - 3 回目のログイン失敗時の Jetty UserRealm リダイレクト
カスタムの Jetty UserRealm 実装があり、基本認証 (SSL を使用) 用に構成されている場合、3 回目のログイン失敗後に特定のページに移動する方法はありますか?
ユーザーが 3 回試行してもログインできない場合に、ユーザーに連絡先情報を表示したいだけです。
または、からスローした例外を表示することは可能ですか
基本認証として構成されている場合の方法は?
ありがとうニール