2009-08-20 19 views
1

私はちょうどこのアイデアを調べているので、サンプルコードはありません。私はウェブ上で掘り下げてきましたが、私は実際に何を探していなければならないのか分かりませんので、あまり見つけられません。だから私は誰かが知っているかどうか尋ねてみると思った。もしこれが可能ならば。 b)どうすればいいのですか? (または、私がそれをやろうとしていることを少なくとも知っていなければならないもの)デプロイされたjarに基づいて動的にナビゲーションメニューを作成します

私はJ2EEを実行しているJBossサーバーでクライアント上のJSPページを使用してWebアプリケーションを構築しています。 。

基本的に、アプリにはさまざまなセクションが含まれており、開発中に時間の経過と共に展開され、さまざまなセクションの組み合わせを使用している可能性もあります。私が考えることができる最も配備方法は、各セクションをそれ自身のjarファイルにすることです。その後、顧客に関連するセクションの組み合わせに応じて、JBossサーバーに必要なjarファイルだけをインストールしてデプロイします。

これをサポートするには、クライアントナビゲーションメニューに、JBossサーバーにデプロイされているものに基づいて使用可能なセクションのみを表示したいと思います。私のサーブレットは、サーバに何が配備されているかを知ることは可能ですか?できるだけ私が知っていることは分からないので、私は解決策をできるだけ「ダム」にしたいと思っています。つまり、何を探すべきか(私たちの瓶を識別する接頭辞以外のもの)を言いたくありません。ビルド。

私の現在の解決策は、データベースにインストールされたセクションのリストを保持するテーブルを持つことです。しかし、これはインストール時にスクリプトの更新などが必​​要になるため、サーバーにjarファイルをデプロイするだけでこれを行うことができるはずです。

ありがとうございます。

+0

速い返信をお寄せいただきありがとうございます。私はマニフェストのことを考えなかった。素晴らしいチップ。 – javadeveloper

答えて

0

あなたが起動するときには、(すべてマニフェストを一覧表示する方法についてthis answerを参照)MANIFEST.MFファイルにこの情報を追加して、あなたのWebアプリケーション内のすべてのファイルを列挙できます。

0

私は、アプリケーションの「プラグインディレクトリ」設定を構成することによって、同様のことを行います。その後、そのディレクトリを定期的にスキャンしてJarsを探します。 Jarが実際に有効なプラグインであるかどうか、およびそのクラスからロードするクラス(そのクラスの静的初期化子がアプリケーションにプラグインを登録する)を特定するために、マニフェスト内の特定のメタデータを検索します。

次に、そのディレクトリに新しいJarを配置してその機能を追加するだけです。

関連する問題