我已经在Linux机器上运行了basex的现有安装。安装运行良好,我能够编辑.basex文件以将任何执行指向主数据库,并且可以从任何地方运行客户端并进行连接。
我还让jetty6与basex war软件包一起运行,该软件包也可以运行,可访问并返回有效的休息响应。
我的问题是其余响应显示没有可用资源,据我所知,这意味着它没有连接到现有数据库,而是创建(或创建)了自己的数据库。我已将web.xml的dbpath变量更改为在.basex文件中使用的BaseXData路径,重新打包了.war,并重新启动了jetty,但未成功。
我需要更改什么以使basex的servlet看到已经可用的数据库文件夹?
更新:
每次我运行servlet时,无论我将什么放在web.xml的dbpath参数中,它似乎都指向战争中的数据文件夹。我假设/ myfolder / BaseXData将被视为绝对路径,但是战争似乎默认为它的数据文件夹,而没有给我一个我要告诉它看不到的错误。
我可以通过使用符号链接替换数据文件夹将数据构建到战争中,但这不会使更改持久化,因此它不是一个完整的解决方案。
看来,最新版本的Basex应该通过构建其余组件来解决此问题,但CentOS上似乎尚不可用。
最佳答案
升级到7.5(在撰写本文时稳定的开发人员),该版本合并了http服务,而无需进行战争包装。更改了.basex配置以匹配现有数据库,就像在7.3下进行本地访问一样,一切都很好。
感谢ChristianGrün通过basex邮件列表提供的帮助。