I'm trying to subscribe to an ActiveMQ topic from a .NET application and here below is my code (I use Apache NMS 1.7.0):
using Apache.NMS;
using Apache.NMS.ActiveMQ;
...
public void Start()
{
    try {
        // connect to ActiveMQ
        long timestamp = DateTime.Now.Ticks / TimeSpan.TicksPerMillisecond;
        string providerUrl = String.Format("tcp://{0}:{1}", Host, Port);
        IConnectionFactory connectionFactory = new ConnectionFactory(providerUrl);
        connection = connectionFactory.CreateConnection(); // fails here
        connection.ClientId = String.Format("{0}/{1}/{2}", AssemblyInfo.Title, Username, timestamp);
        connection.Start();
        // create consumer and register callback for incoming messages
        ISession session = connection.CreateSession(AcknowledgementMode.AutoAcknowledge);
        IMessageConsumer messageConsumer = session.CreateConsumer(
            new Apache.NMS.ActiveMQ.Commands.ActiveMQTopic(TopicName), MessageSelector, false
        );
        messageConsumer.Listener += new MessageListener(OnMessage);
    } catch (Exception e) {
       _.Logger.Error(Resources.ErrorStartingConsumer, e.Message);
    }
}
public void OnMessage(IMessage message)
{
    if (!(message is ITextMessage)) {
        // 'message' is not a text message
        _.Logger.Warn(Resources.SkippedMessage, message.NMSMessageId);
    } else {
        string textMessage = (message as ITextMessage).Text;
        foreach (string acceptedProtocol in AcceptedProtocols) {
            if (textMessage.StartsWith(acceptedProtocol + ":")) {
                // process message here
                return;
            }
        }
        // the url contained in 'message' is not supported
        _.Logger.Warn(Resources.SkippedMessage, message.NMSMessageId);
    }
}
The code above compiles successfully... but the attempt to connect to the ActiveMQ server fails. Here below is the statement that fails...
connection = connectionFactory.CreateConnection(); 
... and here is the error message:
Channel was inactive for too long: tcp://172.16.126.194:61615
I'm a bit confused since I get this error even if it's the first time my client attempts to connect the ActiveMQ server.
I've also tried to set wireformat.maxinactivityduration=0, but no way. Any help would be really appreciated.