2016-11-08 6 views
0

я пытаюсь запустить тестовое приложение, используя автономную JMS приложения с Отпраком (с использованием Siebel сообщений в формате XML). Мы используем IBM Специфика WebSphere MQ.FATAL ERROR: «com.ibm.xtq.commons.utils.wrappedruntimeexception: корневой элемент требуется ин хорошо сформированный документ»

У меня есть объекты QueueConnection, QueueSession и QueueSender.

Приведенный ниже пример кода. Во время работы replymessage имеет значение null, и я получил исключение «FATAL ERROR:« com.ibm.xtq.commons.utils.wrappedruntimeexception: корневой элемент требуется в хорошо сформированном документе ».
Исключение произошло в строке «TextMessage replyMessage = (TextMessage) msg» Почему я получаю это исключение, помогите мне решить эту проблему.

public static void main(String args[]){ 

MQQueueConnectionFactory factory = new MQQueueConnectionFactory(); 
     factory.setQueueManager(queueManagerName); 
     factory.setHostName("hostName"); 
     factory.setTransportType(1); 
     factory.setPort(1111); 
     factory.setChannel("channel"); 
     connection = factory.createQueueConnection(); 
     connection.start(); 
     boolean transacted = false; 
     QueueSession session = connection.createQueueSession(transacted, 1); 
     MQQueue requestQueue = new MQQueue(); 
     requestQueue.setBaseQueueManagerName(queueManagerName); 
     requestQueue.setBaseQueueName(requestQueueName); 
     requestQueue.setTargetClient(1); 
     Queue replyQueue = session.createQueue(replyQueueName); 
     QueueSender queueSender = session.createSender(requestQueue); 

     TextMessage requestMessage = session.createTextMessage(); 
     requestMessage.setText(message); 
     requestMessage.setJMSReplyTo(replyQueue); 
     queueSender.send(requestMessage); 

     String selector = "JMSCorrelationID = '" + id + "'"; 
     javax.jms.QueueReceiver queueReceiver = session.createReceiver(replyQueue, selector); 
     Message msg = queueReceiver.receive(timeout); 

     TextMessage replyMessage = (TextMessage)msg; 

     replyMessage.getText(); 




     } 

Ниже содержимого XML является запрос XML Siebel (эти данные посылаются через JMS отправить сообщение)

<?xml version='1.0' encoding='UTF-8' ?> 
<?Siebel-Property-Set EscapeNames='false'?> 
<SiebelMessage MessageId='1-1GGX' MessageType='Integration Object' IntObjectName='GL IVR Request' IntObjectFormat='Siebel Hierarchical'> 
    <GLIVRRequest> 
     <TransactionName>Policy</TransactionName> 
     <PolicyNumber>XYZ123</PolicyNumber> 
     <AgentCode></AgentCode> 
     <PostalCode></PostalCode> 
     <WithdrawalAmount></WithdrawalAmount> 
     <LoanAmount></LoanAmount> 
     <ApplyToPremium></ApplyToPremium> 
     <ApplyToPremiumAmount></ApplyToPremiumAmount> 
     <RequestType></RequestType> 
     <RequestItemID></RequestItemID> 
     <SendMethod></SendMethod> 
     <GLIMCallerFaxNumber></GLIMCallerFaxNumber> 
    </GLIVRRequest> 
</SiebelMessage> 

ответ

0

Такого рода исключения возникают, когда XML файл является пустым или нулевым. Проверьте файл xml-файла. Это не проблема xml-формата siebel.

Однако, если вы получили отклик как «null», проверьте его.

Смежные вопросы