2012-03-27 49 views
1


私は少し問題があり、それに対する解決策はありません。 私は風袋のための柔軟なポートが必要です。私はプロパティファイルにポート変数を設定して、tomcatがこれを読んで、このポートでサーバを起動したい。私は、tomcatがプロパティから読み取ることができないことを知っていますが、システム変数/プロパティを読み取ることができます。 私はプロジェクトとtomcatをantでビルドします。これは、ソリューションがantにあることを意味します。Tomcat Server.xmlにプレースホルダを使用

のserver.xml

<Connector 
    port="${tomcat.http.port}" maxHttpHeaderSize="8192" ... 
</Connector> 

のbuild.xml

<exec dir="${basedir}/tomcat/bin" executable="${basedir}/tomcat/bin/catalina.sh" failonerror="true" output="${basedir}/tomcat/logs/testrun.log"> 
    <arg value="start" /> 
</exec> 

project.properties

tomcat.http.port=42 

答えて

1

私は何を、

<copy todir="${dir.destination.config.tomcat}" filtering="true"> 
     <fileset dir="${dir.with.template.config.tomcat}"/> 

     <filterset> 
      <filter token="http.port" value="${http.port}"/> 
      <filter token="https.port" value="${https.port}"/> 
      <filter token="admin.port" value="${admin.port}"/> 
      <filter token="control.port" value="${control.port}"/> 
     </filterset> 
    </copy> 

そして-Dhttp.port = 42か入れて、あなたのAntビルドを実行します。私のアリのbuild.xmlに続いて

<Connector port="@[email protected]" protocol="HTTP/1.1" 
     connectionTimeout="20000" redirectPort="@[email protected]" /> 

:私は、server.xml Tomcatはでプレースホルダのプロパティを使用してファイルしていますantによってロードされたプロパティーファイルに格納されます。

+0

具体的なものは何ですか?これは私のserver.xmlですか? – Happo

+0

私はそれが動作すると思うクール。ご協力ありがとうございました。 template.configはserver.xmlにすることができます。 – Happo

関連する問題