3

Jettyを使用する製品のビルドシステムをクリーンアップしています。現在、プロジェクトには

javax.servlet.jsp:jsp-api:2.1

依存関係として。プロジェクトにJettyを使用していることを考えると、

org.mortbay.jetty:jsp-api-2.1:6.1.5

より良いオプションになります。私は正しい/間違っていますか?それらは交換可能に使用できますか?jsp-api-2.1別の実装を活用していますか?jsp-apiそれとも、Jettyとの互換性を主張する場合、それは単に再パッケージ化するのでしょうか?

私はこれに関する情報をウェブ上で見つけようとしてきましたが、今のところ何も出てきていません。

更新:同じようorg.mortbay.jetty:servlet-api-2.5:6.1.5に見えjavax.servlet.jsp:servlet-api:2.1、同じ関係にあります。

4

1 に答える 1

3

Jettyにはjspの長くてカラフルな歴史があり、独自のjsp実装がないため、他の実装を頻繁に活用しています。バージョン番号から判断すると、それらは非常に古いバージョンであり、glassfishjsp実装の上にパッチを維持していました。突堤へのログインをサポートするためのパッチであり、バグ修正が1つか3つあったと思います。

現在、しばらく前にGlassfishからスピンアウトされたjava.netプロジェクトのjspアーティファクトを使用しています。ただし、これもバグ修正を定期的に追跡しているようには見えないため、Tomcatでjasperの実装を試してみます。

質問に戻りますが、APIは頻繁に変更されないため、jsp-apiアーティファクトは通常は再パッケージ化されたアーティファクトです。パッチを適用した実装とペアに保つために、歴史的にそれらを再バンドルしました。

org.mortbayパッケージをまだ使用しているため、明らかにjetty-6セットアップを使用していますが、jetty6とjetty7はどちらもservlet-api 2.5であるため、jetty7jspセットアップの使用を回避できる可能性があります。これらのアーティファクトをここで宣言します。

http://central.maven.org/maven2/org/eclipse/jetty/jetty-jsp/7.6.5.v20120716/jetty-jsp-7.6.5.v20120716.pom

これらもGlassfishバンドルであり、再パッケージ化されてosgiバンドルになり、osgi環境でjettyで使用できるようになります。ただし、正常に動作するはずですが、jetty7ディストリビューションにパッケージ化しています。

于 2012-08-13T15:08:36.470 に答える