1

我正在尝试将 Orbeon Forms 连接到外部现有数据库。所以我添加了参数

<property as="xs:anyURI"
          name="oxf.fr.persistence.service.exist.uri"
          value="http://orbeon:secret@localhost:8080/exist/rest/db/orbeon/fr"/>

到这里写的properties-local.xml http://wiki.orbeon.com/forms/doc/developer-guide/exist-configuration#TOC-Configuring-Form-Runner但这不起作用,orbeon仍在尝试连接嵌入现有数据库,并说数据库已经被另一个数据库实例(它是外部存在实例)锁定。我试图更改 web.xml 以关闭所有嵌入的现有 servlet,但仍然没有结果。

我究竟做错了什么?

可能需要更改其他配置吗?

谢谢,任何回复。

4

2 回答 2

1

在 3.8 中,Orbeon Forms 使用 eXist 来存储一些内部 XForms 状态(除了作为默认的 Form Runner 持久性之外)。这种对 eXist 的使用已经在 3.9 和更新版本中被删除。这可能解释了为什么 Orbeon Forms Stills 会尝试连接到您的本地 eXist 数据库。

在 3.8 中,以下属性配置对 eXist 的访问以进行 XForms 状态处理:

<property as="xs:string"  name="oxf.xforms.store.application.username"              value="guest"/>
<property as="xs:string"  name="oxf.xforms.store.application.password"              value="guest"/>
<property as="xs:anyURI"  name="oxf.xforms.store.application.uri"                   value="xmldb:exist:///"/>
<property as="xs:string"  name="oxf.xforms.store.application.collection"            value="/db/orbeon/xforms/cache/"/

通过更新这些,您应该能够指向您的外部 eXist 并完全删除对内部 eXist 的使用。

于 2012-04-02T16:09:38.860 回答
0

感谢您的回复。

问题是我为外部存在配置了相同的目录存储,对于嵌入的存在。因此,当 orbeon 启动嵌入式数据库时,没有机会连接到已占用的文件。

So after I reconfigured exist-conf.xml in orbeon/WEB-INF, orbeon managed to start and connect to external DB.

于 2012-04-03T06:03:57.647 回答