Я пытаюсь отправить сообщение на сервер ActiveMQ с моим клиентским приложением, написанным на C# .NET. , У меня есть XML-сообщения, которые я преобразовал в поток Zip и пытаюсь отправить.Не удалось извлечь тело из-за: javax.jms.JMSException: Не удалось создать тело из байта (Не удалось извлечь отправленный Zip-файл в ActiveMQ)
public IMessage SendMessage(string mqUri, string brokerUri, MemoryStream message, string username, string password)
{
Uri connecturi = new Uri(mqUri);
IConnectionFactory factory = new NMSConnectionFactory(connecturi);
using (IConnection connection = factory.CreateConnection(username, password))
using (ISession session = connection.CreateSession())
{
IDestination destination = SessionUtil.GetDestination(session, brokerUri);
using (IMessageProducer producer = session.CreateProducer(destination))
{
connection.Start();
IBytesMessage request = session.CreateBytesMessage(message.ToArray());
producer.Send(request);
return request;
}
}
}
На стороне сервера при разборе данных получили исключение, как:
исполнения JMS сообщения слушателя не удалось. Caused by: [org.apache.camel.RuntimeCamelException - Не удалось извлечь тело из-за: javax.jms.JMSException: Не удалось создать тело из байтов. Причина: java.io.StreamCorruptedException: недопустимый заголовок потока: 00010000. Сообщение: ActiveMQObjectMessage.
Когда я отладки кода и установить точку останова, есть исключение на Bodylength и содержание говоря «request.Content» бросил исключение типа «Apache.NMS.MessageNotReadableException»
Есть ли специальное преобразование zip для отправки сообщения на сервере ActiveMQ? Пожалуйста помоги. Благодаря
Почему преобразование xml в zip ?? можете ли вы открыть zip-файл с помощью любых zip-инструментов? –