在Orbeon 4.5中自定义按钮

时间:2015-05-19 19:15:09

标签: orbeon

在proprties-local.xml中,我定义了持久层:

<property
    as="xs:string"
    name="oxf.fr.persistence.provider.*.*.*"
    value="MsSqlPersistance"/>

<property
    as="xs:anyURI"
    name="oxf.fr.persistence.MsSqlPersistance.uri"
    value="http://10.7.3.63:8080/MsSqlPersistenceLayerImpl"/>

现在,每次我点击“保存”或“发送”按钮,都会向我的 MsSqlPersistenceLayerImpl REST服务发送HTTP PUT请求。 还有

<property as="xs:anyURI" name="oxf.fr.detail.send.success.uri.*.*"
          value="http://10.7.3.63:8080/orb_submit/orbSubmit"/>
<!-- HTTP method to use to navigate to the success page -->
<property as="xs:string" name="oxf.fr.detail.send.success.method.*.*" value="post" replace="all"/>

根据我的理解,点击发送按钮后,会有一个HTTP PUT请求发送到我的 MsSqlPersistenceLayerImpl 组件,并且在成功之后,会有另一个POST请求发送到 orb_submit 服务。

现在,我想点击发送按钮(工作流程发送)后,不要向我的 MsSqlPersistenceLayerImpl 服务发送任何HTTP PUT请求,我只想打电话(在表单验证后)orb_submit服务。有可能吗?

更新

自定义按钮对我来说真的很难。通常,在单击保存后,我的表单将保存在数据库中,并显示成功消息 - 这是默认行为。但是,当我把这段代码

 <property as="xs:string"  name="oxf.fr.detail.process.save-draft.*.*">
    save
    then success-message("save-draft-success")
    recover error-message("database-error")
</property>
单击保存后

进入properties-local.xml 没有任何反应(没有保存,没有消息;我当然除了正常的行为)。 Morover,尝试以相同的方式自定义工作流程发送,它根本没有任何影响。我错过了什么吗?

1 个答案:

答案 0 :(得分:2)

4.5中不支持内联属性。请尝试改为:

<property
    as="xs:string"
    name="oxf.fr.detail.process.save-draft.*.*"
    value='
        save
        then success-message("save-draft-success")
        recover error-message("database-error")'
/>