Lotus и Websphere Mq

Тема в разделе "Lotus + Java + LS2J", создана пользователем lotususer, 12 авг 2009.

  1. lotususer

    lotususer Гость

    Здравствуйте!

    Помогите пожалуйста решить следующую проблему.
    На AIX 5.3 стоят Domino Server 7 и WebSphere MQ 5.3.
    По расписанию на сервере Domino запускается java агент, который принимает сообщение xml из очереди MQ и создает на его основе документ Lotus.
    Проблема:
    при приеме сообщения из mq стандартным Java кодом
    Код (Text):
    MQQueueConnectionFactory cf = new MQQueueConnectionFactory();
    cf.setHostName("test_host");
    cf.setPort(1414);
    cf.setTransportType(JMSC.MQJMS_TP_CLIENT_MQ_TCPIP);
    cf.setQueueManager("test_qm");
    cf.setChannel("test_channel");
    cf.setCCSID(1208);

    MQQueueConnection connection = (MQQueueConnection) cf.createQueueConnection();
    MQQueueSession session = (MQQueueSession) connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
    MQQueue queue = (MQQueue) session.createQueue("test_queue");
    MQQueueReceiver receiver = (MQQueueReceiver) session.createReceiver(queue);  

    connection.start();

    JMSMessage receivedMessage = null;
    int messageCount = 0;
    receivedMessage = (JMSMessage) receiver.receiveNoWait();
    if(receivedMessage instanceof TextMessage ) {
    String msgText = ((TextMessage)receivedMessage).getText(); // вытащить xml
    }
    и при выводе msgText сообщение xml выходит урезанным, т.е. как будто метод getText урезает xml при приеме из MQ в нескольких местах, кусками. получается битый xml файл.

    Если Domino стоит на Windows, а MQ на AIX, то агент отрабатывает нормально, сообщение не урезается.
     
Загрузка...

Поделиться этой страницей