Hi Régis, I am pretty sure your issue comes from the SSL certificates available to your Java VM, and is not a problem with your xar package. Running Basex with -d shows more information [2]
Something like [1] may fix it for one machine, but it is a slow process and far from ideal. /Andy [1] https://stackoverflow.com/questions/21076179/pkix-path-building-failed-and-unable-to-find-valid-certification-path-to-requ/36427118#36427118 [2] basex -d -c "<repo-install path=' https://datasphere.gitpages.huma-num.fr/heimdall/xquery/heimdall.xar'/>" ... javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at java.net.http/jdk.internal.net.http.HttpClientImpl.send(HttpClientImpl.java:578) at java.net.http/jdk.internal.net.http.HttpClientFacade.send(HttpClientFacade.java:123) at org.basex.io.IOUrl.response(IOUrl.java:145) at org.basex.io.IOUrl.inputStream(IOUrl.java:127) at org.basex.io.in.BufferInput.get(BufferInput.java:49) at org.basex.io.IOUrl.read(IOUrl.java:112) at org.basex.query.util.pkg.RepoManager.install(RepoManager.java:64) at org.basex.core.cmd.RepoInstall.run(RepoInstall.java:36) at org.basex.core.Command.run(Command.java:233) at org.basex.core.Command.execute(Command.java:93) at org.basex.api.client.LocalSession.execute(LocalSession.java:131) at org.basex.api.client.Session.execute(Session.java:36) at org.basex.core.CLI.execute(CLI.java:94) at org.basex.core.CLI.execute(CLI.java:78) at org.basex.core.CLI.execute(CLI.java:65) at org.basex.BaseX.<init>(BaseX.java:83) at org.basex.BaseX.main(BaseX.java:45) Caused by: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target On Wed, 10 Apr 2024 at 11:16, Régis WITZ <regis.w...@cnrs.fr> wrote: > Hi all, > I'm kind of a XQuery noob, but I'm guilty of the creation of a little > BaseX module, Heimdall (10.5281/zenodo.10638084 > <https://zenodo.org/records/10638084>). > It's automatically built, unit tested and documented using GitLab CI. > All build results, including the .xar file, are hosted using GitLab Pages. > Thus, the module .xar archive is available here : > |https://datasphere.gitpages.huma-num.fr/heimdall/xquery/heimdall.xar| > <https://datasphere.gitpages.huma-num.fr/heimdall/xquery/heimdall.xar>. > As you see, all this is hosted in Huma-Num's self-hosted GitLab instance > (Huma-Num is a french research infrastructure). > > However, this mail is /not/ (just) a shameless plug. > My issue is that I cannot install my .xar directly with |REPO INSTALL| : > > 1. I cannot install it with the CLI: > > basex -c"<repo-install > path=' > https://datasphere.gitpages.huma-num.fr/heimdall/xquery/heimdall.xar'/>" > [repo:not-found] Package > 'https://datasphere.gitpages.huma-num.fr/heimdall/xquery/heimdall.xar' > not found. > > Things are perfectly fine with for example the functx package : > |basex -c"<repo-install > path='https://files.basex.org/modules/expath/functx-1.0.xar'/>"| > 2. For gigs, I tried to change the protocol from HTTPS to HTTP, and > here is the error that I get : > > basex -c"<repo-install > path=' > http://datasphere.gitpages.huma-num.fr/heimdall/xquery/heimdall.xar'/>" > [repo:parse] heimdall.xar: Resource "expath-pkg.xml" not found.. > > So, maybe there is a problem with my expath-pkg.xml file ? > I didn't find any -but, as I said, I'm no pro. If needed, here is > the file that is wrapped in the .xar : > > https://gitlab.huma-num.fr/datasphere/heimdall/xquery/-/raw/main/expath-pkg.xml?ref_type=heads > < > https://gitlab.huma-num.fr/datasphere/heimdall/xquery/-/raw/main/expath-pkg.xml?ref_type=heads > > > 3. However, when I download my .xar file from the URL, and then REPO > INSTALL it using the local path, stuff works fine : > wget --no-check-certificate > https://datasphere.gitpages.huma-num.fr/heimdall/xquery/heimdall.xar > basex -c"<repo-install path='./heimdall.xar'/>" > basex -c"<repo-list />" > > Name Version Type Path > > --------------------------------------------------------------------------- > http://heimdall.huma-num.fr 2.1 EXPath > http-heimdall.huma-num.fr-2.1 > > 1 package(s). > > So I suppose the problem /might/ not be within the .xar itself, but the > way it is hosted ? > Maybe REPO INSTALL doesn't like my disturbing lack of SSL certificate ? > I tried to search for some clue, but didn't find any clue in the > documentation <https://docs.basex.org/wiki/Repository>. Maybe I'm blind, > maybe that's not the problem at all. > > It's not exactly a blocking issue, but my noobiness regarding the basex > ecosystem (and xquery in general) prevents me to understanding what > happens, my README contains false info, and I'm not at ease with that. > If someone had any intel, I'd be thankful. > > If needed, here is the repository : > https://gitlab.huma-num.fr/datasphere/heimdall/xquery/ > <https://gitlab.huma-num.fr/datasphere/heimdall/xquery/> > And here is the corresponding issue (in French, sorry) : > https://gitlab.huma-num.fr/datasphere/heimdall/xquery/-/issues/1 > <https://gitlab.huma-num.fr/datasphere/heimdall/xquery/-/issues/1> > > Have a nice day, sunshine, flowers and all, > > Régis >