We are troubleshooting a WebGISDR failure in an ArcGIS Enterprise 11.5 deployment on Linux and have isolated the problem to the federated ArcGIS Notebook Server's exportSite operation.
WebGISDR receives HTTP 500 when exporting Notebook Server. We reproduced the problem independently of WebGISDR by making an authenticated request directly to the Notebook Server exportSite Admin API:
POST /notebooks/admin/exportSite
The operation consistently returns:
HTTP 500 - Export operation failed. null
With temporary DEBUG logging enabled, Notebook Server successfully:
- starts the export operation;
- creates
/opt/arcgis/notebookserver/temp/tmp-carbon-export-*; - creates the temporary configuration store;
- updates the Admin API system properties; and
- copies the site configuration into the temporary configuration store.
Immediately afterward, the export fails with:
java.lang.NullPointerException
at java.util.Objects.requireNonNull(...)
at sun.nio.fs.UnixFileSystem.getPath(...)
at java.nio.file.Path.of(...)
at java.nio.file.Paths.get(...)
at com.esri.arcgis.carbon.common.FileUtil.copyFile(FileUtil.java:652)
at com.esri.arcgis.carbon.admin.SiteManager.exportSite(SiteManager.java:2027)
at com.esri.arcgis.carbon.admin.rest.site.SiteResource.exportSite(SiteResource.java:329)
We captured the temporary tmp-carbon-export-* directory before Notebook Server deleted it. It contains backupRestoreInfo.json and the substantive Notebook Server configuration store, including machine configuration, server directories, notebook runtime definitions/manifests, security configuration, Web Adaptor configuration, certificate keystore, and container metadata.
Comparing the live configuration store with the captured export configuration store showed only expected .lock files omitted; no substantive configuration files were missing.
We also tested whether the problem was related to this being a newly deployed/previously unused Notebook Server. A Standard notebook was created, saved, and successfully executed. This initialized a running Notebook container, workspace artifacts, and populated Notebook Server system job records.
As an additional functional test, the notebook successfully executed ArcGIS API for Python code using:
from arcgis.gis import GIS
gis = GIS("home")
print("Connected to:", gis.properties.name)
print("Portal URL:", gis.url)
print("Logged in as:", gis.users.me.username)
print("Portal version:", gis.properties.currentVersion)
The notebook successfully authenticated to the federated Portal and returned:
Connected to: ArcGIS Enterprise
Portal URL: https://gis.xyz.com/portal
Logged in as: siteadmin
Portal version: 2025.1
This confirms that normal Notebook Server container execution, ArcGIS API for Python execution, Portal authentication, and communication with the federated Portal are functioning.
After creating, saving, and executing the notebook, we tested the direct Notebook Server exportSite operation again. It still fails identically with:
HTTP 500 - Export operation failed. null
Therefore, the failure does not appear to be caused by the absence of user notebooks, lack of first-use initialization, inability to start Notebook containers, or inability of notebooks to communicate with Portal.
We have also validated:
- Portal ↔ Notebook Server federation/configuration
- Notebook Server → configured Portal URL connectivity
- TLS connectivity
- successful Notebook container startup and execution
- successful ArcGIS API for Python execution and Portal authentication
- registered Notebook Server directories and paths
- filesystem permissions and available disk space
- Notebook Server certificate/keystore artifacts
- creation and use of the temporary export directory
- successful creation of
backupRestoreInfo.json - successful copy of the substantive Notebook Server configuration store
The failure therefore appears to occur after the site configuration has been copied, when SiteManager.exportSite() calls FileUtil.copyFile() with what appears to be a null path.
Questions:
- Is this a known ArcGIS Notebook Server 11.5
exportSite issue? - What additional file or artifact does
SiteManager.exportSite() attempt to copy at this stage of the export? - Is there a supported way to determine which source path passed to
FileUtil.copyFile() is null? - Is there a patch or supported workaround for this issue?
Environment: ArcGIS Enterprise 11.5, ArcGIS Notebook Server 11.5, Linux, federated Notebook Server.