2010-02-09 5 views
4

Je suis en train d'écrire sur un hôte IBM MQSeries avec:IBM MQSeries Problème: hôte distant ferme la connexion lorsque le message écrit (erreur 10054)

public void WriteMessage(string message) 
{ 
    queueMessage = new MQMessage(); 
    queueMessage.WriteString(message); 
    queueMessage.Format = MQC.MQFMT_STRING; 
    queuePutMessageOptions = new MQPutMessageOptions(); 

    queue.Put(queueMessage, queuePutMessageOptions); 
} 

Mon errorcatch me donne une erreur cependant:

Error in the application

Ce qui ne montre pas beaucoup de cours. Alors j'ai vérifié le journal des événements sur le serveur et cela m'a montré l'erreur:

An error occurred receiving data from stx041774 (192.168.225.51) over TCP/IP. This may be due to a communications failure.

The return code from the TCP/IP (recv) call was 10054 (X'2746'). 

Record these values and tell the systems administrator.

Je levai les yeux 10054 et signifie:

An existing connection was forcibly closed by the remote host.

Est-ce que quelqu'un a une idée de ce que je peux faire pour ce travail ? Y at-il peut-être une option MQC que je dois définir pour l'écriture? Parce que je ne sais pas quoi faire avec les options, je ne suis même pas sûr si c'est le problème.

Répondre

3

J'ai résolu ce problème avec une mqc.mqoo_output option:

queue = qManager.AccessQueue(QueueName, MQC.MQOO_OUTPUT + MQC.MQOO_FAIL_IF_QUIESCING); 
Questions connexes