I'm trying to start a Mirth channel with a simple TCP Listener source but I'm getting the following error:
[2018-07-31 11:38:44,185] ERROR (com.mirth.connect.server.channel.ErrorTaskHandler:25): com.mirth.connect.donkey.server.StartException: Failed to start channel Test-Channel (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
at com.mirth.connect.donkey.server.channel.Channel.start(Channel.java:724)
at com.mirth.connect.server.controllers.DonkeyEngineController$ChannelStatusTask.execute(DonkeyEngineController.java:1928)
at com.mirth.connect.server.channel.ChannelTask.call(ChannelTask.java:67)
at com.mirth.connect.server.channel.ChannelTask.call(ChannelTask.java:16)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: com.mirth.connect.donkey.server.ConnectorTaskException: Failed to create server socket (TCP Listener "Source" on channel xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
at com.mirth.connect.connectors.tcp.TcpReceiver.onStart(TcpReceiver.java:179)
at com.mirth.connect.donkey.server.channel.SourceConnector.start(SourceConnector.java:104)
at com.mirth.connect.donkey.server.channel.Channel.start(Channel.java:700)
... 7 more
Caused by: java.net.BindException: Address already in use (Bind failed)
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)
at java.net.ServerSocket.bind(ServerSocket.java:375)
at java.net.ServerSocket.<init>(ServerSocket.java:237)
at com.mirth.connect.connectors.tcp.StateAwareServerSocket.<init>(StateAwareServerSocket.java:36)
at com.mirth.connect.plugins.ssl.server.SecureTcpConfiguration.createServerSocket(Unknown Source)
at com.mirth.connect.connectors.tcp.TcpReceiver.createServerSocket(TcpReceiver.java:895)
at com.mirth.connect.connectors.tcp.TcpReceiver.onStart(TcpReceiver.java:177)
... 9 more
It looks like a port is already in use. I've tried changing the source's "Local port" but I keep getting this error.
Any ideas what I'm doing wrong?
Look for some other application listening on this same port. The easy way to test for this, in this instance, would be to change your port number in your TCP Listener to something else. For testing, I would choose something above 32000, and deploy the channel again.