You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The Data Custodian must retain a customer/admin portal alongside its ESPI resource-server role. After the "UI not needed in resource server" decommissioning, the custodian dashboard (/DataCustodian/custodian/home) renders but every action card 404s, and the top menu bar is unreadable. This issue re-activates the admin portal capabilities and fixes the navbar contrast.
Defects
1. Dashboard action links 404 (context-path bug)
templates/custodian/home.html and the custodianHeader nav fragment hard-code absolute links (href="/custodian/..."). The app is served under context-path /DataCustodian, so the browser requests http://localhost:8081/custodian/... → 404. Links must be context-relative Thymeleaf links (th:href="@{/custodian/...}").
2. Backing controllers/templates missing or disabled
Link
State
/custodian/retailcustomers
RetailCustomerController enabled, but its index/form/showtemplates do not exist (and view names are inconsistent)
/custodian/upload
UploadController@Controllercommented out, no template
/custodian/oauth/tokens
no controller, no template
/custodian/settings
no controller, no template
3. Navbar unreadable (WCAG contrast failure)
fragments/layout.html :: custodianHeader uses navbar-dark bg-warning — light/white link text on a light amber (#FF9800) background. Fails contrast and is unreadable. Fix to dark text on amber (data-bs-theme="light").
Scope (full restore)
Fix all custodian nav + dashboard links to context-relative th:href.
Fix custodianHeader contrast to readable dark-on-amber.
Map bare /custodian → dashboard; populate dashboard stat tiles from services.
Summary
The Data Custodian must retain a customer/admin portal alongside its ESPI resource-server role. After the "UI not needed in resource server" decommissioning, the custodian dashboard (
/DataCustodian/custodian/home) renders but every action card 404s, and the top menu bar is unreadable. This issue re-activates the admin portal capabilities and fixes the navbar contrast.Defects
1. Dashboard action links 404 (context-path bug)
templates/custodian/home.htmland thecustodianHeadernav fragment hard-code absolute links (href="/custodian/..."). The app is served under context-path/DataCustodian, so the browser requestshttp://localhost:8081/custodian/...→ 404. Links must be context-relative Thymeleaf links (th:href="@{/custodian/...}").2. Backing controllers/templates missing or disabled
/custodian/retailcustomersRetailCustomerControllerenabled, but itsindex/form/showtemplates do not exist (and view names are inconsistent)/custodian/uploadUploadController@Controllercommented out, no template/custodian/oauth/tokens/custodian/settings3. Navbar unreadable (WCAG contrast failure)
fragments/layout.html :: custodianHeaderusesnavbar-dark bg-warning— light/white link text on a light amber (#FF9800) background. Fails contrast and is unreadable. Fix to dark text on amber (data-bs-theme="light").Scope (full restore)
th:href.custodianHeadercontrast to readable dark-on-amber./custodian→ dashboard; populate dashboard stat tiles from services.RetailCustomerControllerview names; addindex/form/showtemplates.UploadController(@Controller+ROLE_CUSTODIAN) + add upload template.OAuthTokenController+ read-only tokens table (overAuthorizationService).SettingsController+ read-only system-info page (no writes — CRUD stays deferred per chore(#119): defer ESPI resource CRUD writes — delete write/admin controllers #166).@PreAuthorize("hasRole('ROLE_CUSTODIAN')")on the existing form-login chain.Acceptance
ROLE_CUSTODIANadmin, every dashboard card and nav item resolves (HTTP 200), no 404s.mvn -pl openespi-datacustodian -am testgreen; CI green.