我正在开展迁移项目。我想在jms消息文本上设置过滤器。这里JMS消息文本内容具有xml消息。在jms中是否有任何方法可以在xpath或某些文本内容或任何提供此类功能的工具上添加过滤器?
答案 0 :(得分:0)
如果您可以在发送邮件之前在邮件头中包含属性,那么使用者可以根据邮件过滤邮件。
您可以使用注释指定它。如果过滤标准是固定的,则更合适。
@ActivationConfigProperty(propertyName = "messageSelector", propertyValue = "xkey = 'xValue'")
否则,也可以在创建消费者时指定&可以在运行时提供/构建过滤条件。
String messageSelector = "xkey = 'xValue'"; session.createConsumer(destination, messageSelector);
否则,我不知道其他方式。但是根据特定属性的XML消息中的某些值来过滤消息,解析每个对象,检查所有属性等等是非常困难的。
答案 1 :(得分:0)
可能的解决方案可能是使用集成框架,即提供一些过滤器组件的Apache Camel。具体而言,Apache Camel提供以下message filters。我不知道你的项目有多大,也许它是一个开销...但它是一个解决方案。