2012-10-19 22 views
1

我有一个在Linux机器上运行的basex的现有安装。安装运行良好,我可以编辑.basex文件,将任何执行指向主数据库,并且可以从任何地方运行客户端并进行连接。Basex servlet没有看到现有的数据库

我也有jetty6运行basex战争包,它也运行,可访问,并返回有效的休息回应。

我的问题是其余的响应显示没有可用的资源,据我所知,这意味着它没有连接到我现有的数据库,但创建(或创建)它自己的。我已将web.xml的dbpath变量更改为我在.basex文件中使用的BaseXData路径,重新打包了.war,并重新启动了jetty,但没有成功。

我需要做些什么才能使basex的servlet看到数据库文件夹已经可用?

更新: 每次运行servlet时,似乎都指向war中的数据文件夹,无论我放入web.xml中的dbpath参数。我假设/ myfolder/BaseXData将被视为绝对路径,但战争似乎默认为它的数据文件夹,但没有给我一个错误,它没有看到我告诉它去。

我可以通过用符号链接替换数据文件夹来将我的数据构建到战争中,但这不会允许更改持续,因此它不是一个完整的解决方案。

似乎最新版本的Basex应该通过构建其余组件来解决这个问题,但它似乎并未在CentOS上提供。

回答

1

升级到7.5(本文撰写时为稳定开发),其中包含http服务而不需要战争包装。改变了.basex配置以与现有数据库相匹配,正如7.3下的本地访问一样,并且一切都很好。

感谢ChristianGrün通过basex邮件列表寻求帮助。