当我们将Mule应用程序部署为同一服务器上的Tomcat群集上的战争时,我们面临一个问题。只在一个实例上部署时,它可以正常工作。
我们在mule.config文件中定义了一个https连接器,如下所示,
<https:connector name="someConnector" ...doc:name="HTTP\HTTPS">
<reconnect frequency="5000" count="3"/>
<https:tls-key-store path="${keystr}" keyPassword="${pwd}" storePassword="${pwd}"/>
</https:connector>
上面的连接器用于对网址进行 Http出站连接,在端点中我们将端口定义为443,如下所示,
<https:outbound-endpoint exchange-pattern="request-response" password="xxx" user="xxx" host="${abc}" path="${abc}" port="443" method="GET" connector-ref="someConnector" />
当我们在Tomcat集群上部署时出现问题,因为该端口已经从一个Tomcat实例使用,该应用程序在其他实例上出错。以下是错误, 根异常堆栈跟踪:
java.net.BindException: Address already in use
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:376)
at java.net.ServerSocket.bind(ServerSocket.java:376)
您能否建议一种解决此问题的方法?
答案 0 :(得分:0)
通常,该异常与入站端点相关联。您的入站端点是如何配置的?