如何在wso2 ESB中为队列、端点和消息处理器设置动态



我有一个表和我的程序在循环中读取表,而对于调用URL,当调用完成时,我将状态设置为OK。由其他程序插入到这个表中,链接列不是恒定的。表格类似:

Id   link                        status
==============================================
1 | 192.168.0.1/adduser?id=1  |
2 | 192.168.0.2/adduser?id=2  |
3 | 10.0.0.1/getinfo?id=1      |
4 | 192.168.0.1/deleteuser?id=10  |

所以我想用一个队列、端点和消息处理器来实现每个记录。例如:消息处理器1(队列1,端点1)

endpoint1="192.168.0.1">

消息处理器2(队列2,端点2)

endpoint2="192.168.0.2">

消息处理器3(队列3,端点3)

endpoint3="10.0.0.1">

我对用静态解决方案定义没有问题,但我不知道动态定义队列、端点和消息处理器,因为表中的新行将有新的链接,我以前不喜欢定义。谢谢

不确定我是否做对了,但您可以在发送数据之前通过设置"to"标头来设置要发送数据的队列。下面是一个示例。

<header xmlns:ns="http://org.apache.synapse/xsd" name="To" expression="concat('jms:/',get-property('queueToSend'), '?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory&amp;java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;java.naming.provider.url=failover:(tcp://server1:port,tcp://server2:port)&amp;transport.jms.DestinationType=queue&amp;transport.jms.UserName=queuUser&amp;transport.jms.Password=queuePass')"></header>
<send></send>

相关内容

  • 没有找到相关文章