問題タブ [bndtools]
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.
osgi - JSPとBNDtoolsを使用したサーブレット
ここで、BNDtoolを使用したサーブレットに関する優れたチュートリアルを見ました:http ://www.ralfebert.de/tutorials/osgi_server/ 。
しかし、どうすればこのサーブレットから静的なhtmlドキュメントとJSPにアクセスできますか?持って行きたいときはどこに保管すればいいrequest.getRequestDispatcher("*.jsp")
ですか?
osgi - bnd-cacheにバンドルが見つかりません
bndtoolsに問題があります。解決は問題なく完了しましたが、実行記述子で「Run OSGi」をクリックすると、次の問題が発生します。
Status ERROR: bndtools.core code=0 jena-arq~;version=[2.9.4,2.9.5) Not found in [bnd-cache, aQute.lib.deployer.obr.LocalOBR@1fef0b44, aQute.lib.deployer.obr.OBR@6ccadbd, aQute.lib.deployer.obr.LocalOBR@67a256c7, aQute.lib.deployer.obr.OBR@2d52912f] null
osgi - Brindy Vaadin OSGi/ Guessit - Felix は機能するが、Equinox は機能しない
bndtools 2.0 を使用し、最新の Brindy Github バージョンに従ってプロジェクトを作成すると、Felix http jetty と felix scr に基づいて依存関係を取り込む run bnd を作成すると、Vaadin が起動し、すべて正常に動作します。
しかし、org.eclipse.equinox.http.jetty などで実行しようとすると、サーブレットが登録されていないようで、vaadin の起動に失敗します。
コードをデバッグすると、ds コンポーネントのファクトリ ビットはすべて正常に動作しますが、サーブレットはエイリアスを認識しません。
vaadin 7 用に変更する前に、これを実行しようとしています。
問題が発生している可能性のある提案はありますか?
java - コンソールへの Bndtools 出力
OSGi プロジェクトで bndtools を使い始めたばかりですが、情報出力 (Hibernate 情報、Spring DM 情報) をコンソール (Eclipse) に取得するようにプロジェクトを構成できないようです。フィードバックがなく、ログ ファイルが作成されていないように見えるため、プロジェクトで苦労しています。
Jラブ
jsp - JSP をサポートする OSGI 環境で Jetty 9 が起動しない
OSGI 環境で Jetty 9.0.3 を実行し、特別なマニフェスト パラメーターを使用して WAR を展開しようとしています (実際には jar、以下の JettyTest-0.0.0.jar です)。http://www.eclipse.org/jetty/documentation/current/framework-jetty-osgi.htmlの指示に従ってい ます
JSP サポートを含めない場合、つまり、実行構成から次の行を削除すると、正常に動作します。
しかし、それらを含めて org.eclipse.jetty.osgi.boot.jsp バンドルを含めると、次のエラー メッセージが表示されます。
このエラーを 1 週間以上検索しました。ソース org.eclipse.jetty.osgi.boot.jasper.JSTLBundleDiscoverer の 216 行を見ましたが、明らかな間違いは見当たりません。
実行構成に JettyTest-0.0.0.jar を含めなくても、エラーは同じです。
Jetty のドキュメントを読むと、やりたいことができるはずです。このエラーの理由を知り、修正したいのですが、セットアップに pax-web やその他の大きな変更を含めたくありません。
誰かが同様の問題を抱えていましたか?または、問題なくこれを行いましたか?エラーの根本原因を見つけるのを手伝ってください。
私が使用するファイルは次のとおりです。
JettyTest-0.0.0.jar
マニフェスト.MF
web.xml
index.html
test.jsp
run.bndrun
アップデート
ロギングを改善した後、完全なエラーメッセージを見つけました。org.xml.sax.ErrorHandler の JAR を見逃しているようですが、使用できる Apache Felix jar や、このクラスを含む他のライブラリを知っている人はいますか?
osgi - OBRリポジトリの「リソース」要素で追加の属性を取得するには?
現在のBND Tools / Bindexによって生成された OBR リポジトリで動作するApache Felix Web Console OBR プラグインを取得しようとしています。
問題は、生成されたリポジトリ (たとえば、Eclipse の「リリース バンドル」で生成されたもの) を Felix Web プラグインで読み取ることができないことです。
逆に、Felix 自身の OBR リポジトリはプラグインによって適切に認識されます。これは、"resource" 要素内に追加の属性があるように見えるためです。これは、リポジトリにはありません。
http://www.osgi.org/download/rfc-0112_BundleRepository.pdfのスキーマ仕様では、「リソース」XML 要素内に属性の余地がありますが、それらは Java API の一部として定義されています。
この gitHub フォークはhttps://github.com/rkrzewski/bindexの仕事をしているようですが、これの状態を知っている人はいますか? これはいつか Bindex に統合されますか? 更新: このフォークの所有者である Rafał からの回答は次のとおりですhttps://github.com/rkrzewski/bindex/issues/3#issuecomment-27784279 それで、bndtools-users の Google グループで再質問しました: https://groups. google.com/forum/#!topic/bndtools-users/ZdY0ASnLNmc
または、不足しているリソース属性を使用して OBR リポジトリを生成する他の方法はありますか? ありがとう。
osgi - Apache Felix での OBR 解決中の OSGI Bundle Repository (OBR) 機能の競合
大規模なアプリケーションの展開オプションとして Felix での OBR の使用を調査していますが、いくつかの初期のハードルに遭遇しました。
取られたアプローチ
- 「Require-Bundle:」セクションで、すべての単一アプリケーションの依存関係 (基本的には手動展開のすべて) を、サードパーティのライブラリに至るまで一覧表示する manifest.mf を含む新しい jar を作成しました。私の意図は、最初にすべてを宣言し、次にペアリングして、OBR を介してサードパーティのバンドルを解決することでした。
maven-bundle-plugin を使用して、ローカルの .m2 リポジトリを OBR としてインデックス付けしました
/li>Apache Felix を起動し、OBR リポジトリを追加しました
/li>アプリケーションのバンドル依存関係リスト全体を含む jar をデプロイしようとしました
/li>
問題
Spring の依存性注入を使用するため、javax.inject の一部のバンドルにはパッケージ要件があります。ただし、OBR には、javax.inject の機能をアドバタイズする複数のバンドルがあります。Spring バンドルと Google Guice バンドルの両方で利用できます。残念ながら、OBR リゾルバはアプリケーションの起動を妨げる Guice 実装を選択しているようです。
回避策
OBR インデックスから Guice ライブラリを削除すると、OBR リゾルバーはそれを見つけられないため、Spring 実装が使用され、アプリケーションは問題なく起動します。
質問
- Spring の javax.inject 実装を含む、高レベルのアプリケーション jar 内のすべての依存関係を一覧表示しました。Felix の OBR リゾルバーがパッケージ要件を解決しようとしているのはなぜですか? この方法で (単一のバンドルを使用して) デプロイしようとすると、深さ優先の方法で OBR 解決が行われますか?
- パッケージ機能の競合がないことを確認するために、サードパーティ製ライブラリの OBR リポジトリを作成/維持するために通常使用される戦略は何なのか知りたいです。アプリケーションの依存関係のみを含み、パッケージ機能の競合がない、より小さな OBR リポジトリ インデックスを作成して維持する必要がありますか? 役立つMavenプラグインはありますか?
- より広いコミュニティは、OBR を介して一度に 100 を超えるバンドルをどのようにデプロイしますか? おそらく、親バンドル ソリューションよりも優れたオプションがあります。