Question

I have an existing install of basex running on a linux machine. The install runs fine, I am able to edit .basex files to point any execution to the main database, and can run the client from anywhere and connect.

I also have jetty6 running with the basex war package, which also runs, is accessible, and returns valid rest responses.

My issue is the rest response shows no resources available, which as far as I can tell means it is not connecting to my existing database but creating (or created) it's own. I have changed the web.xml's dbpath variable to the BaseXData path I have used in the .basex files, repackaged the .war, and restarted jetty with no success.

What do I need to change to make a servlet of basex see a database folder already available?

Update: Every time I run the servlet it seems to point to the data folder in the war, no matter what I put in the dbpath param in web.xml. I'm assuming /myfolder/BaseXData would be treated as an absolute path, but the war seems to default to it's data folder without giving me an error that it doesn't see were I'm telling it to go.

I can build my data into the war by replacing the data folder with a symbolic link, but that won't allow changes to persist, so it isn't a complete solution.

It also seems that the newest versions of Basex are supposed to resolve this by building the rest component it, but it doesn't seem to be available on CentOS yet.

Was it helpful?

Solution

Upgraded to 7.5 (stable dev at time of writing) which incorporated http services without needing war packaging. Changed .basex config to match the existing database as was working under 7.3 for local access, and all is well.

Thanks to Christian Grün via the basex mailing list for the assist.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top