get property函数从给定作用域的消息上下文中检索属性。如果未指定作用域,则从默认synapse作用域检索属性。
语法:
get-property(String scope, String propertyName)
get-property(String propertyName)
支持的作用域:
default
axis2
transport
registry
system
默认作用域:
可以从默认作用域中检索synapse作用域中的消息上下文属性。这些是直接在synapse messagecontext实例上设置的属性。除了用户定义的属性外,还可以从默认范围中检索以下特殊属性。
Name | Return Value |
---|---|
To | 如果未定义To address ,则以字符串或空字符串形式传入URL。 |
From | 如果From address,则将From address作为字符串或空字符串 |
Action | 如果未定义Action,则SOAP Action Header值为字符串或空字符串 |
FaultTo | 如果未定义FautTo header值,则将soap FautTo Header值作为字符串或空字符串 |
ReplyTo | 如果没有定义Replyto header,则将 replyto header值作为字符串或空字符串。 |
MessageID | 作为字符串的消息的唯一标识符(UUID)。此ID保证是唯一的。 |
FAULT | 如果消息有错误,则为true;如果消息没有错误,则为空字符串 |
MESSAGE_FORMAT | 根据消息返回pox、get、soap11、soap12。如果消息类型未知,则返回SOAP12 |
OperationName | 与消息对应的操作名。 |
Axis2 作用域:
可以从axis2作用域中检索位于axis2作用域中的消息上下文属性。这些是在基础的axis2 messagecontext对象上设置的属性。
Transport 作用域:
可以从传输作用域检索位于传输作用域中的消息上下文属性。这些是在messagecontext上设置的传输头。
Registry 作用域:
可以从注册表范围中检索位于注册表中的属性。
System 作用域:
可以从系统范围检索Java系统属性。
返回参数的base64编码值。
语法:
base64Encode(String value)
返回参数的base64解码值。
语法:
base64Decode(String value)
返回参数的URL编码值。
语法:
url-encode(String value)
synapse支持几个xpath变量。这些用于从消息上下文访问各种属性。
$axis2
$trp
$ctx
$url
$body
$header
这些xpath变量在不同范围内获取属性。
$ctx
用于访问默认范围中的MessageContext属性的变量前缀。
例如,要在默认范围内获取名为“foo”的属性,请使用以下xpath表达式
$ctx:foo
$axis2
访问axis2 MessageContext属性的变量前缀
例如,要获取名为“messagetype”的属性,请使用以下xpath表达式
$axis2:messageType
$trp
用于访问消息的transport headers的变量前缀
例如,要获取名为Content-Type的传输头,请使用以下xpath表达式
$trp:Content-Type
$url
用于访问消息的URL参数的变量前缀
例如,要获取名为“bar”的URL参数,请使用以下xpth表达式
$url:bar
$body
Get the message body
$header
Get the soap header