- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
当我使用 PHP-Stomp 向 ActiveMQ 发送消息时消息作为 BytesMessage 发送。但是我想发送一条 TextMessage。
根据STOMP documentation这可以通过不发送内容长度 header 来实现:
... The protocol does however support a content-length header. To provide more robust interaction between Stomp and JMS clients, ActiveMQ keys off of the inclusion of this header to determine what message type to create when sending from Stomp to JMS. The logic is simple:
Inclusion of content-length header => Resulting Message
yes => BytesMessage
no => TextMessage
This same logic can be followed when going from JMS to Stomp, as well. A Stomp client could be written to key off of the inclusion of the content-length header to determine what type of message structure to provide to the user.
在我的测试 PHP 脚本中,我没有定义内容长度 header ,它似乎是自动添加的。我还尝试将内容长度传递为 0、false 或 null。在所有这些情况下,它都会生成一个 BytesMessage。
所以我的问题是,如何生成 Textmessage 而不是 BytesMessage。
我的代码如下所示:
<?php
$stomp = new Stomp('tcp://localhost:61613');
$stomp->send('/topic/test.central_message_topic', 'testmessage', [
"persistent" => "true",
]);
最佳答案
已经很长时间了,但这对我有用:
try {
$stomp->send("your_queue", "your_message", array("amq-msg-type" => "text"));
} catch (StompException $e) {
die('send failed: ' . $e->getMessage());
}
关于php - ActiveMQ/PHP Stomp 使用 TextMessage 而不是 BytesMessage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31559039/
正如我们所知,多数组如 int array1[3][2] = {{0, 1}, {2, 3}, {4, 5}};是连续的,所以它与 int array2[6] = { 0, 1, 2, 3, 4, 5
构造 TextMessage 的最佳方法是什么?来自单元测试中的字符串? 我只看到Session#createTextMessage(String) ,但这需要一个需要进行一些设置的 session
我使用 QueueBrowser 获取并循环访问 JMS 队列上的消息枚举。当我尝试将 msgs.nextElement() 转换为 TextMessage 时,IntelliJ IDEA 告诉我:
在我看来就像 JMS TextMessage包含 Java.lang.String 不会将 \r\n 识别为换行符,而是将 CR LF 视为 Windows 计算机上输入的一部分。 @Override
将我的应用程序从 OC4J 迁移到 WebLogic 10.3.6 服务器后,我遇到了一个奇怪的问题。 我的应用程序将 JMS TextMessage 生成到 OracleAQ 队列中。它工作正常。但
我正在 TextMessage 上设置 Long 属性 msg.setLongProperty("publishSequence", pubSeq); ,并将其发送到本地 IBM WebSphere
我正在构建一些 MQ 队列连接,我需要将消息队列从 queueReceiver.Receivenowait() 转换为 JMS Textmessage。 因为 queueReceiver.Receiv
我有一个在队列上设置监听器的 Java 应用程序,onMessage(Message) 获取 javax.jms.TextMessage 的子类,我该如何制作它获取javax.jms.BytesMes
调用 MessageProducer.setTimeToLive() 与调用 TextMessage.setJMSExpiration() 有区别吗? 我可以从文档中看到 javax.jms.Mess
本文整理了Java中org.springframework.web.reactive.socket.WebSocketSession.textMessage()方法的一些代码示例,展示了WebSock
我正在使用 Spring JMS @JmsListener 注释收听 MQ Q。 @JmsListener(destination = "${qNmae}",
Oracle 文档说 - A TextMessage object is used to send a message containing a java.lang.String. It inheri
我的应用程序在 Tomcat 下运行,多个 Spring 的 DefaultMessageListenerContainer 监听在 Oracle 11g Weblogic 服务器下运行的多个不同的
当我使用 PHP-Stomp 向 ActiveMQ 发送消息时消息作为 BytesMessage 发送。但是我想发送一条 TextMessage。 根据STOMP documentation这可以通过
我在版本 5 或更高版本的 iOS 应用程序上使用 ShareKit 2。我已将应用配置为正确使用 Facebook,当操作表被激活时,这是唯一出现的选项。我想使用内置的 Twitter 共享系统,但
我正在尝试通过 azure 服务总线使用 amqp 将简单的字符串消息从 .NET 发送到 Java 客户端。根据documentation我应该能够发送这样的代理消息: message = new
我正在从 Java 代码向 Websphere MQ Server 发送消息,当我在 MQ 服务器上读取相同的消息时,它显示为: message 下面是将消息发送到MQ服务器的代码: private
我的 Spring Boot 应用程序在从 ActiveMQ 代理检索 TextMessage 类型的 JMS 消息时遇到问题。 如果消费者尝试从代理检索消息,它无法自动将消息转换为 TextMess
我在网上发现了一些非常矛盾的信息,我认为每个不同的 JMS 提供者也可能会改变答案。 我试图了解在将 XML 发送到 JMS 系统(例如 ActiveMQ)时我是否应该使用 BytesMessage
我需要连接到不同数据库中的两个 Oracle AQ 队列。当然,除了连接字符串之外,我在这两种情况下都使用完全相同的代码。其中一个队列工作正常,但第二个队列不行。 String db_string =
我是一名优秀的程序员,十分优秀!