Skip to content

[Task] ES Search: backend wiring + rollback entry #35372

@hmoreras

Description

@hmoreras

Goal

Mechanical backend changes to route /dotAdmin/#/c/es-search to the Angular portlet while preserving a rollback escape hatch via an es-search-legacy entry. Mirror the pattern established in Categories PR #35146.

Changes required

1. dotCMS/src/main/webapp/WEB-INF/portlet.xml

  • Modify the existing es-search entry (currently uses ESContentResourcePortlet) to use PortletController with init-param view-path = /es-search (match Categories pattern at the categories entry).
  • Add a new es-search-legacy entry that preserves the original ESContentResourcePortlet class and view-path = /WEB-INF/jsp/es-search/render.jsp. This keeps the Dojo experience available as "ES Search Legacy" in the admin menu.

2. PortletID enum

File: likely dotCMS/src/main/java/com/dotmarketing/util/PortletID.java (confirm during implementation).

  • Add ES_SEARCH_LEGACY("es-search-legacy").

3. Language.properties

  • Add: com.dotcms.repackage.javax.portlet.title.es-search-legacy = ES Search Legacy
  • Add any keys from the FE copy deck (UX/UI design sub-task) — coordinate with the FE implementation spec sub-task.

4. SerializationHelperTest (or equivalent)

  • Update expected portlet count if a test asserts it (Categories PR updated from 50 → 51).

5. Angular route registration

Coordinate with the FE implementation spec sub-task: add route in core-web/apps/dotcms-ui/src/app/app.routes.ts with MenuGuardService + reuseRoute: false.

Acceptance Criteria

  • portlet.xml diff matches Categories PR feat(categories): migrate Categories portlet from Dojo to Angular #35146 pattern
  • es-search-legacy entry preserves the existing Dojo JSP exactly (no Dojo code deleted)
  • PortletID enum updated and referenced consistently
  • Language.properties contains the legacy label + FE i18n keys
  • Existing tests pass after portlet count bump (if applicable)
  • Manual verification: user with admin role sees both "ES Search" (new) and "ES Search Legacy" (old) in menu; both load correctly

Out of scope

  • Do NOT delete the Dojo JSPs (render.jsp, es-search-help.jsp, not_licensed.jsp) — the legacy entry references them. Deletion happens in a follow-up once the new portlet is validated in prod.
  • Do NOT implement the Angular components (handled in the FE implementation spec sub-task).

Parent

#34733

Metadata

Metadata

Assignees

Type

No type

Projects

Status

New

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions