У меня есть одна последовательность, которая будет загружаться из конкретной схемы проверки JSON из реестра, в зависимости от значения тела запроса:
<switch description="" source="get-property('uri.var.service')">
<case regex="1">
<property expression="base64Decode(get-property('registry', 'conf:/schemas/1'))" name="schema" scope="default" type="STRING"/>
</case>
<case regex="2">
<property expression="base64Decode(get-property('registry', 'conf:/schemas/2'))" name="schema" scope="default" type="STRING"/>
</case>
</switch>
Тогда я пытаюсь подтвердить это:
<validate cache-schema="true" source="json-eval($)">
<schema key="{get-property('schema')}"/>
</validate>
Однако, это выдает мне эту ошибку:
ValidateMediator Can not find JSON Schema {
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"uin": {
"type": "string"
}
},
"required": [
"uin"
]
}
Почему я не могу загрузить правильную схему из свойства? Кроме того, в документации WSI2 EI нет примеров, касающихся динамических ключей для проверки JSON.