376.9. XPath 注入
您可以使用 Bean 集成在 bean 上调用方法,并使用 XPath 等各种语言从消息中提取值并将其绑定到 method 参数。
默认 XPath 注解有 SOAP 和 XML 命名空间。如果要在 XPath 表达式中使用自己的命名空间 URI,您可以使用 XPath 注解 本身的副本来创建您要使用的任何命名空间前缀。
在 method 参数上使用注解时,在不同的软件包和/或注解名称中剪切并粘贴到您自己的项目中,例如,在范围中添加您需要的命名空间前缀/uris。然后,当您在 method 参数中使用注解时,您希望在 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 } }