2017-10-26 17 views
0

「ソースツリーにファイルをコピーする」以外の環境を扱うことのできない、従来のコードベースを継承するプロセスを進めています。私はすべてを壊すことなくいくつかの正気を再導入しようとしている。レガシーJava Webアプリケーションのweb.xmlファイルを切り替える

(Tomcatの6.xの上のスプリングMVC 3.xの使用)フロントエンドWebアプリケーションのweb.xmlは、異なるURLにプロキシサーブレットの束含ま:ローカル開発のため

<servlet> 
    <servlet-name>FooProxy</servlet-name> 
    <servlet-class>org.mortbay.servlet.ProxyServlet$Transparent</servlet-class> 
    <init-param> 
     <param-name>ProxyTo</param-name> 
     <param-value>http://example.com/foo/</param-value> 
    </init-param> 
</servlet> 

を、これは有します

    :ように、これを達成するための最良の方法は何

    <servlet> 
        <servlet-name>FooProxy</servlet-name> 
        <servlet-class>org.mortbay.servlet.ProxyServlet$Transparent</servlet-class> 
        <init-param> 
         <param-name>ProxyTo</param-name> 
         <param-value>http://localhost:8080/foo/</param-value> 
        </init-param> 
    </servlet> 
    

    :いくつかの並べ替えのdevのサーバーへのプロキシサーブレットと交換しますmvn tomcat6:run


私の現在の考え方を入れていたようなものを使用しているときは何も

  • に触れる前に、アプリがDEVの構成を使用して起動します
  • それは、Mavenのビルドが生み出すであろうと同じ出力を得るのは簡単です以下のような非標準のソースフォルダへのweb.xmlのバージョン:

    `--envs 
        | 
        |--prod 
        | | 
        | `--webapp 
        |  | 
        |  `--web.xml // the original ("production") configuration 
        | 
        `--dev 
         | 
         `--webapp 
         | 
         `--web.xml // the development configuration 
    

    :各「環境」フォルダがで、通常は何の代替バージョンが含まれています。次に、Mavenプロファイルを使用してこれらのフォルダをプラグインします。プロダクションはデフォルトでアクティブになっています。

    私が知りませんが、Mavenのドキュメントは時々ひどいので、そのフォルダの場所を設定する方法もあります。私が知っているのは、src/main/webappは、のどこかに定義された規則です。です。また、tomcat6プラグインが別のwebappフォルダがあるかどうかを確かめることができますか、それ以上の設定が可能で、正しく動作するかどうかはわかりません。 (webappの下にある多くのファイルを、デフォルトフォルダ内の環境間で同じままにしておき、環境フォルダとマージするだけです)。

  • 答えて

    1

    より良い方法は、mavenプロファイルを使用することです。

    このProxyURLを定義するdevとproductionのプロファイルを持つことができます。

    あなたはさらに測定値については

    環境に応じて、プロファイルを使用することができます。

    1. http://maven.apache.org/guides/introduction/introduction-to-profiles.html
    2. https://maven.apache.org/guides/mini/guide-building-for-different-environments.html
    私は実際に私がに陥ってしまったとして、それらが存在するのを忘れ認めるよ
    +0

    このコードベースの多くのレベルの混乱。 – millimoose

    関連する問題