Posted on 2008-08-19 10:20
Prayer 閱讀(753)
評論(0) 編輯 收藏 引用 所屬分類:
GLASSFISH
一般在Glassfish下面新建domain都是使用其自帶的ANT文件setup.xml。有時需要建立多個domain來區分開發和生產環境。如果直接修改setup.xml中的domain.name來新建,則兩個domain會由于端口沖突不能同時運行。setup.xml中列出了Glassfish用到的如下端口:
- <property name="admin.port" value="4848"/>
- <property name="instance.port" value="8888"/>
- <property name="orb.port" value="3700"/>
- <property name="imq.port" value="7676"/>
- <property name="https.port" value="8181"/>
<property name="admin.port" value="4848"/>
<property name="instance.port" value="8888"/>
<property name="orb.port" value="3700"/>
<property name="imq.port" value="7676"/>
<property name="https.port" value="8181"/>
但實際上Glassfish還用到了如下端口,這些端口沒有在setup.xml中列出:
- orb.ssl.port
- orb.mutualauth.port
- domain.jmxPort
orb.ssl.port
orb.mutualauth.port
domain.jmxPort
如果需要兩個domain能同時運行,domain所用到的以上所有的端口都不能相同。上面列出的三個端口跟前面的一樣,是通過"--domainproperties"在setup.xml中作為參數傳入的:
- <target name="create.domain" depends="setup.init,set.env">
- <exec executable="${ASADMIN}" failonerror="true">
- ...
- <arg line="--domainproperties orb.listener.port=${orb.port}:jms.port=${imq.port}:http.ssl.port=${https.port}:domain.jmxPort=${jmx.admin}:orb.ssl.port=${iiop_ssl}:orb.mutualauth.port=${iiop_mutualauth}" />
- ...
- </exec>
- ...
- </target>
<target name="create.domain" depends="setup.init,set.env">
<exec executable="${ASADMIN}" failonerror="true">
...
<arg line="--domainproperties orb.listener.port=${orb.port}:jms.port=${imq.port}:http.ssl.port=${https.port}:domain.jmxPort=${jmx.admin}:orb.ssl.port=${iiop_ssl}:orb.mutualauth.port=${iiop_mutualauth}" />
...
</exec>
...
</target>
這樣在setup.xml中如下設置這些對應的屬性即可:
- <property name="admin.port" value="4848"/>
- <property name="instance.port" value="8888"/>
- <property name="orb.port" value="3700"/>
- <property name="imq.port" value="7676"/>
- <property name="https.port" value="8181"/>
-
- <property name="iiop_ssl" value="3821"/>
- <property name="iiop_mutualauth" value="3921"/>
- <property name="jmx.admin" value="8687"/>
<property name="admin.port" value="4848"/>
<property name="instance.port" value="8888"/>
<property name="orb.port" value="3700"/>
<property name="imq.port" value="7676"/>
<property name="https.port" value="8181"/>
<property name="iiop_ssl" value="3821"/>
<property name="iiop_mutualauth" value="3921"/>
<property name="jmx.admin" value="8687"/>
每次新建domain時,增加這些端口的值就可以保證新建的domain能正常啟動而不與已有的domain發生端口沖突。