Difficult to tell what may go wrong.. What is output if you start basexhttp in debugging mode (with -d)?
Am 29.01.2016 1:10 vorm. schrieb "Eliot Kimber" ekimber@contrext.com:
I'm seeing a difference in how the .basex file is processed between running a server under OS X directly and running it in a Docker container. In particular, my local settings are being rejected as unrecognized.
Here's the startup messages from within the basex container:
basex@611404b26b04:~$ basexhttp /home/basex/.basex: Unknown option 'CATFILE'. /home/basex/.basex: Unknown option 'DTD'. /home/basex/.basex: Unknown option 'SKIPCORRUPT'. /home/basex/.basex: Unknown option 'CHOP'. /home/basex/.basex: writing new configuration file. [main] INFO org.eclipse.jetty.server.Server - jetty-8.1.17.v20150415 [main] INFO org.eclipse.jetty.webapp.StandardDescriptorProcessor - NO JSP Support for /, did not find org.apache.jasper.servlet.JspServlet BaseX 8.3 [Server] Server was started (port: 1984). [main] INFO org.eclipse.jetty.server.AbstractConnector - Started SelectChannelConnector@0.0.0.0:8984 HTTP Server was started (port: 8984).
I verified that with the same .basex file running 8.3 under OS X the options are recognized and set as expected.
What would cause this difference in behavior?
Here is the .basex file in the /home/basex directory when the server starts:
USER = admin PASSWORD = admin DEBUG = false DBPATH = /home/basex/basex/data REPOPATH = /home/basex/basex/repo LANG = English LANGKEYS = false GLOBALLOCK = false
# Client/Server Architecture HOST = localhost PORT = 1984 SERVERPORT = 1984 SERVERHOST = PROXYHOST = PROXYPORT = 0 NONPROXYHOSTS = IGNORECERT = false TIMEOUT = 30 KEEPALIVE = 600 PARALLEL = 8 LOG = true LOGMSGMAXLEN = 1000
# HTTP Services WEBPATH = /home/basex/basex/webapp RESTPATH = RESTXQPATH = CACHERESTXQ = false HTTPLOCAL = false STOPPORT = 8985 AUTHMETHOD = Basic
# Local options CATFILE = /opt/dita-ot/DITA-OT/catalog-dita.xml DTD = true SKIPCORRUPT = true CHOP = false -- (this is the end of the file) --
After the server starts the offending options are omitted from the rewritten .basex file.
The only difference I can think of is the Java version. The container uses the OpenJDK while I have Oracle Java running in OS X:
basex@611404b26b04:~$ java -version openjdk version "1.8.0_66-internal" OpenJDK Runtime Environment (build 1.8.0_66-internal-b17) OpenJDK 64-Bit Server VM (build 25.66-b17, mixed mode) basex@611404b26b04:~$
But otherwise it's exactly the same code running in both environments and the same config file.
Thanks,
Eliot
Eliot Kimber, Owner Contrext, LLC http://contrext.com