3

jboss 5.1でWebアプリのルートコンテキストをカスタマイズするために、WebアプリケーションのWEB-INFディレクトリの下にjboss-web.xmlファイルを追加する方法を説明する文書化された方法があります。

<jboss-web>
  <context-root>/my/custom/context/root</context-root>
</jboss-web>

これはうまく機能しますが、warファイルを変更する必要があります。

もう1つのオプションは、warファイルの名前を変更することですが、バージョン番号を含む元の名前を保持したいので、コンテキストルートにフォルダー階層を設定する必要はありません(#表記はサポートされていないため)deployフォルダ内)。

同じことを実現したいのですが、warファイルを変更しません。tomcatはコンテキスト構成を使用してそれを実行できることを知っています。また、jboss 5.1にはtomcatのフレーバーが含まれていることを理解しているので、同じ効果を達成できるかどうか疑問に思っています。

jboss.org wikiで、さまざまなバージョンのjbossとtomcatのコンテキスト設定について説明しているこのページを見つけましたが、これは私には機能しません。追加しようとしています

 <Context docBase="/path/to/my.war" path="/my/custom/context/root"/>

deploy/jboss.sar/server.xml 起動時にエラーを生成するには:

 org.jboss.xb.binding.JBossXBException: Failed to parse source: Context not found as a child of Host in unordered_sequence: Listener* Valve* Alias* Realm? attributes?

これは、Contextタグがでサポートされていないことを示していHostます。

Context名前の付いたファイルに要素を追加しdeploy/jboss.sar/jboss.web/localhost/my#custom#context#root.xmlても何も起こらず、jbossによって幸いにも無視されます(ただし、ファイルはJavaプロセスによって開かれていることがわかります)。

たぶんこれはjboss5.1では不可能ですか?どんなアイデアでも大歓迎です。

注:これはソースコードからコメントアウトされているようです。これがサポートされていない理由を説明しますが、他に選択肢はありますか?

4

1 に答える 1

1

答えはありませんが、JBoss Web Server は明らかに純粋な Apache Tomcat ではなく、Tomcat で利用できる機能のいくつかは JBoss Web Server では動作しません。<Valve>これらの無効な機能の 1 つは、個別の要素内に特定の要素を含めることができないことです<Service>

しかし、あなたの質問に対しては、JBoss Web Server の観点から考えてみてください。戦争では、でルートコンテキストを変更する可能性がありますjboss-web.xml。Tomcat では、 で変更できますserver.xml。と の両方で変更した場合、結果のコンテキストはどうなりますjboss-web.xmlserver.xml? server.xmlこれがおそらく、構成が無効になっている理由です。

于 2012-03-08T09:58:18.987 に答える