将orbeon 3.8连接到外部存在的数据库v.1.4.1

时间:2012-04-02 13:05:58

标签: orbeon xforms exist-db

我正在尝试将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,但这不起作用,或者仍在尝试连接到嵌入式存在的数据库,并说数据库已被某些人锁定另一个数据库实例(它是外部存在的实例)。我试图更改web.xml以关闭所有嵌入的存在的servlet,但仍然没有结果。

我做错了什么?

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

谢谢,任何回复。

2 个答案:

答案 0 :(得分:1)

使用3.8,Orbeon Forms使用eXist存储一些内部XForms状态(除了作为默认的Form Runner持久性)。此后,eXist的使用已在3.9及更高版本中删除。这可能解释了为什么Orbeon Forms仍然试图连接到您的本地eXist数据库。

使用3.8时,以下属性配置对eXist for 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的使用。

答案 1 :(得分:0)

感谢您的所有回复。

问题是我为外部存在配置了相同的目录存储,就像嵌入的存储一样。所以当orbeon启动时,嵌入式DB没有机会连接到已经占用的文件。

所以在我在orbeon / WEB-INF中重新配置 exist-conf.xml 后,或者设法启动并连接到外部数据库。