376.9. XPath 注入
您可以使用 Bean Integration 对 bean 调用方法,并使用 XPath 等各种语言从消息中提取值并将其绑定到方法参数。
默认 XPath 注解有 SOAP 和 XML 命名空间。如果要在 XPath 表达式中使用您自己的命名空间 URI,您可以使用您自己的 XPath 注解 副本来创建您要使用的任何命名空间前缀。
在其他软件包和/或注解名称中使用您的注解时,I.e. cut and paste upper code to own project,然后在对 method 参数使用注解时添加您想要的任何命名空间前缀/uri。然后,当您在方法参数上使用注解时,您希望的所有命名空间都可在 XPath 表达式中使用。
例如:
public class Foo { @MessageDriven(uri = "activemq:my.queue") public void doSomething(@MyXPath("/ns1:foo/ns2:bar/text()") String correlationID, @Body String body) { // process the inbound message here } }