2016-04-08 9 views
1

RESTful API経由で他のサービスと通信するJavaEEアプリケーションがあります。リモートサービスのホスト名:ポートは、環境エントリ(<env-entry/> in web.xml、環境変数と混同しないでください)によって設定されます。この値は、後で@Resourceと注釈されたフィールドを通じて取得されます。デプロイ用のenvエントリの設定方法

ビルドプロセスがデプロイメントから分離されているので、(変数がlocalhostに設定されている)のデフォルト値を実際のホスト名にapp.warに上書きする必要があります。私はこれが別のweb.xmlまたはjboss-web.xml(WildFly上)と一緒に提供されると仮定しますが、これがどのように設定されているのかわかりません。これは単純なプロセスでなければならず、app.warの再パッケージ化は必要ありません。

+0

はあなたのために?:http://stackoverflow.com/questions/3298763/maven-customize-web-xml-of探しているものである。この-web-app-project – teacurran

+0

いいえ、それはプロファイルを通じて 'app.war'の内容を切り替える方法を教えてくれます。私は単一の 'app.war'を必要とし、配備時(ソースとMavenが利用できないとき)にのみ環境エントリを設定します。 –

+0

実際に私はこの種の設定(プロパティファイルを優先)を使用したことはありませんが、このメカニズムはJNDIを使用しているようです。したがって、おそらく、おそらくこのリンクは役に立つかもしれません:https://docs.jboss.org/author/display/WFLY8/JNDI+Reference – user140547

答えて

1

ディスクリプタの置換プロパティを使用できます。たぶん、これらのリンクはあなたを助けることができる:

Java EE Application Deployment and Configuration

Property substitution of deployment descriptor

+0

2番目の文書によると、これらのプロパティはjboss-web.xmlのみをオーバーライドできます。デフォルトで許可されているweb.xmlをオーバーライドしていますか? –

+0

jboss-web.xmlを使用できます。これはweb.xmlに代わるものです。だから、あなたはプロパティオーバーライドを達成することができるはずです。 https://docs.jboss.org/author/display/WFLY8/Deployment+Descriptors+used+In+WildFly –

+0

これはあまり便利ではありません。なぜならWARはWildFlyと結びついてはならないからです(jboss-web.xmlのそれを示唆している)。 –

関連する問題