mule配置中Web服务端点中的hostName?

时间:2012-11-08 17:42:22

标签: mule

我有一个需要部署在不同服务器上的mule应用程序。我有问题为基于HTTP的端点地址设置主机名

主机名应该来自属性文件,在构建时根据构建应用程序的环境替换它 -

    Example --
    http:inbound-endpoint address="http://${host.name}:61005/my/service" exchange-pattern="request-response"

或者是否可以使用hostname构建可部署的应用程序作为localhost并在部署时替换它

    Example --
    http:inbound-endpoint address="http://localhost:61005/my/service" exchange-pattern="request-response"

提前致谢。

2 个答案:

答案 0 :(得分:4)

您可以使用0.0.0.0作为主机,它将侦听服务器的每个网络接口:

<http:inbound-endpoint address="http://0.0.0.0:61005/my/service" exchange-pattern="request-response" />

这意味着,例如,如果您的服务器具有IP 192.168.0.1,它将自动在http://192.168.0.1:61005/my/service/处理服务请求

它将使您免于配置部署文件。

答案 1 :(得分:2)

属性文件可以正常工作但请记住Spring的Property Placeholder Resolver也可以从Java系统属性中获取值,因此您可以在启动时为${host.name}提供值:

mule -M-Dhost.name=$HOSTNAME