Re: [thredds] Uncorrelate disk path and href for catalogRef and dataset in catalog.xml

Hi,

If your THREDDS instance went from 4.6 to 5.x then you are probably running 
into the same thing I did that is detailed in the following GitHub issue:

https://github.com/Unidata/tds/issues/504

Dave

From: thredds <thredds-bounces@xxxxxxxxxxxxxxxx> on behalf of Léo Le Lonquer 
<leo.le.lonquer@xxxxxxxxxx>
Date: Wednesday, October 30, 2024 at 10:25 AM
To: thredds@xxxxxxxxxxxxxxxx <thredds@xxxxxxxxxxxxxxxx>
Subject: [thredds] Uncorrelate disk path and href for catalogRef and dataset in 
catalog.xml

Hello everyone,

I'm migrating Thredds instances, and as I do so, I'm also reorganising Thredds 
folders.

We have a large amount of catalogRef and datasets that are located under 
{tds.content.root.path}. I would like to move them all to a new folder 
{tds.content.root.path}/catalogs to simplify management.

However doing so, an extra /catalogs/ is added to the URL of each of the 
underlying datasets.

ex :

https://tds0.ifremer.fr/thredds/CERSAT.html => 
https://tds0.ifremer.fr/thredds/catalogs/CERSAT.html



My root catalog is the following :
<?xml version="1.0" encoding="UTF-8"?>
<catalog name="tds0" 
xmlns="http://www.unidata.ucar.edu/namespaces/thredds/InvCatalog/v1.0";<http://www.unidata.ucar.edu/namespaces/thredds/InvCatalog/v1.0>
 xmlns:xlink="http://www.w3.org/1999/xlink";<http://www.w3.org/1999/xlink>>
<catalogRef xlink:title="CERSAT" xlink:href="catalogs/CERSAT.xml" name=""/>
<catalogRef xlink:title="CORIOLIS" xlink:href="catalogs/CORIOLIS.xml" name=""/>
<catalogRef xlink:title="LPO" xlink:href="catalogs/LPO.xml" name=""/>
</catalog>



I tried several solution but none of them worked :

- adding in threddsConfig.xml a catalogRoot element pointing to a new 
catalog.xml file located at catalogs/catalog.xml. But it resolves as url : 
thredds/catalogs/catalog.html

- using attributes name, ID, alias, urlPath in the definition of catalogRef 
elements in catalog.xml file trying to truncate catalogs/ folder

- defining default catalog.xml at startup, but couldn't find a java parameter 
to do so. Only tds.content.root.path is settable.



It is quite important to keep the same urls while migrating as a lot of 
products stored in the Ifremer Thredds instances are referenced in multiple 
services with their urls.

Maybe I missed a configuration while reading the docs. Does anybody know if 
it's possible and how to do it ?

Thanks,
--

Léo Le Lonquer
Ingénieur Cloud pour la Science
Ifremer Centre Bretagne, 29280 Plouzané, France