当前位置: 首页 > 知识库问答 >
问题:

如何在WSO2 ESB中中介纯TCP消息

慕和惬
2023-03-14

我有一个应用程序(比如TcpApp)发送纯TCP消息(即,没有SOAP,没有信封...只是一个原始字符串甚至字节)。我需要连接ESB以通过特定端口(例如3333)侦听这些消息,并进行一些中介(目前,只做日志记录就足够了)。我认为最好从TcpApp创建一个ActiveMQ队列,然后从ESB中的JMS创建一个代理服务(而不是直接将ESB连接到TcpApp)。我阅读了几个示例和答案,但内容总是XML,TCP只是传输。有时应用程序不会通过TCP发送特殊格式(有时称为电报)。我试图更改内容类型,但ESB仍然拒绝读取TCP端口。

共有1个答案

亢胤运
2023-03-14

在WSO2 EI 6.1.1中,我发现如果同时指定recordDelimiter和RecordDelimiterType,我可以成功地处理纯文本TCP消息。来自工作代理的示例(用换行字符作为分隔符):

<parameter name="transport.tcp.responseClient">true</parameter>
<parameter name="transport.tcp.inputType">binary</parameter>
<parameter name="transport.tcp.recordDelimiter">0x0A</parameter>
<parameter name="transport.tcp.contentType">text/plain</parameter>
<parameter name="transport.tcp.port">50001</parameter>
<parameter name="transport.tcp.recordDelimiterType">byte</parameter>

输入序列中的消息正文如下所示:

<text xmlns="http://ws.apache.org/commons/ns/payload">this_is_the_message</text>
 类似资料:
  • 我正在使用WSO2ESB4.7.0和ActiveMQ5.8.0。我希望将消息存储在队列中,为此我尝试使用这段代码,但它不工作。我创建了存储库,这将有助于存储消息,我的conumeing过程已经在JAVA代码中完成,所以我不必担心消费,如果我这样做了,我的消息将出现在acivemq UI中。我的配置如下所示 我试图通过代理传递消息,为此我编写了简单的代理服务 在这种情况下,我的队列没有在Active

  • 我的代理配置是: 为什么这样?他们的jms配置有问题吗?请引导我。

  • 问题内容: 如何让您的div一路下滑?如何填充父div的垂直空间?如何在不使用背景图像的情况下获得等长的列? 我花了几天时间使用Google搜寻和剖析代码,以了解如何尽可能简单高效地完成等长列。这是我想出的答案,我想在一个小教程中与社区复制和粘贴样式共享此知识。 对于那些认为这是重复的,不是。我受到几个网站的启发,其中包括http://matthewjamestaylor.com/blog/equ

  • 我想将一个元素返回到链中的第一个元素,只要我有一个像这样的代码 然后我想激活一个叫active的类,只有在第一个元素和其他元素中将没有叫active的类,下面的元素将向上移动以替换第一个元素,而第一个元素将返回链中。 这段使用jQuery的代码如下所示 null null 这是我在寻找解决方案时生成的代码 null null

  • 我正在开发一个web应用程序,通过Spring Integration支持TCP连接。它有两个功能。 null null 因此,我认为协作TCP出站和入站通道适配器是困难的。然后,对TCP出站网关进行扩展,增加只接收消息的功能。我应该怎么延长?(还是你有其他想法?) 提前谢了。

  • TCP/IP 是用于因特网 (Internet) 的通信协议。 计算机通信协议(Computer Communication Protocol) 计算机通信协议是对那些计算机必须遵守以便彼此通信的的规则的描述。 什么是 TCP/IP? TCP/IP 是供已连接因特网的计算机进行通信的通信协议。 TCP/IP 指传输控制协议/网际协议(Transmission Control Protocol /