[MGNLREST-92] Revise REST servlet integration Created: 02/Jun/17  Updated: 28/Mar/22

Status: Open
Project: Magnolia REST Framework
Component/s: integration
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Neutral
Reporter: Mikaël Geljić Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: rest, resteasy
Remaining Estimate: 5.5h
Time Spent: 4d 2.5h
Original Estimate: 5d

Attachments: PNG File disable-current-servlet.png     PNG File jersey-with-custom-application.png     PNG File rest-easy-with-custom-application.png    
Issue Links:
Relates
relates to MGNLREST-82 Can't install modules because of conf... Closed
relates to MGNLREST-99 Research possibility to move the Prov... Open
relates to MGNLREST-165 Re-enable scanning for providers Open
Template:
Acceptance criteria:
Empty
Task DoR:
Empty
Date of First Response:
Story Points: 8

 Description   

The RestDispatcherServlet is tightly coupled to RESTEasy. The servlet class itself extends from such proprietary class. In addition, as an outcome of MGNLREST-82, we might have an alternate Jersey-based servlet.

We may reconsider where the RESTEasy/Jersey integration takes place. Ideally the logic of refreshing endpoints from the registry should be extracted to a proper, standard Application class; while config may use default filters provided by RESTEasy or Jersey's respective servlet integration libs.

Original summary: Extract resteasy from rest-integration

  • Option A. try to replace resteasy-specifics in the RestDispatcherServlet
    • with servlet APIs or Magnolia APIs
    • see also ServletDispatchingFilter, RequestDispatchUtil)
  • Option B. relocate RestDispatcherServlet to the new module

Generated at Mon Feb 12 06:56:31 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.