Невозможно создать свойство с именем, содержащим буквальный "пароль"

В файле properties-local.xml я создал несколько свойств. Эти свойства используются для формирования URL-адреса, по которому будут отправлены данные формы. Свойства следующие:

<property as="xs:string" name="streamlyne.protocol">http</property>

<property as="xs:string" name="streamlyne.username">uname</property>
<property as="xs:string" name="streamlyne.pass">gesundheit</property>

<property as="xs:string" name="streamlyne.host">127.0.0.1:8090</property>

<property as="xs:string" name="streamlyne.api.path">ekualiti-kc/remoting/api/orbeonforms</property>
<property as="xs:string" name="streamlyne.api.action">saveFormData</property>

Свойство send выглядит следующим образом:

<property as="xs:string" name="oxf.fr.detail.process.save-draft.S2S_Forms.*">   
    save
    then send(
        uri = "{xxf:property('streamlyne.protocol')}://{xxf:property('streamlyne.username')}:{xxf:property('streamlyne.pass')}@{xxf:property('streamlyne.host')}/{xxf:property('streamlyne.api.path')}/{xxf:property('streamlyne.api.action')}/{xxf:get-request-parameter('propsalID')}",
        replace  = "none",
        method   = "post",
        content  = "xml",
        annotate = "id"
    )
    then success-message("save-success")
    recover error-message("save-error")
</property>

Вышеупомянутая конфигурация работала нормально.

ПРОБЛЕМА:

Я хотел присвоить свойству пароля имя streamlyne.password. Когда я попытался это сделать, действие сохранения не удалось. Поэтому я изменил название на streamlyne.password1. Это снова не удалось. Есть ли какое-то соглашение, чтобы не помещать буквальный password в атрибут имени свойства? Я знаю, это звучит глупо. Но я совершенно уверен, что переименование свойства в pass сработало очень хорошо!


person mark42inbound    schedule 29.03.2018    source источник


Ответы (1)


Действительно, xxf:property() не возвращает свойства значения, содержащие строку «пароль». Это сделано специально, чтобы авторы форм не могли получить доступ к значениям свойств, о которых вы хотите, чтобы Orbeon Forms знал, но вы не обязательно хотите, чтобы авторы форм знали о них, скажем oxf.http.ssl.keystore.password.

Поэтому в вашем случае я бы просто рекомендовал использовать другое имя (скажем, pass, как вы предложили, или secret).

person avernet    schedule 29.03.2018