[MAGNOLIA-7194] After decoration, new provider with invalid data (major severity) cause endpoints unregistered and not available. Created: 10/Nov/17  Updated: 18/Dec/17  Resolved: 18/Dec/17

Status: Closed
Project: Magnolia
Component/s: None
Affects Version/s: 5.6
Fix Version/s: 5.6.1

Type: Bug Priority: Neutral
Reporter: Dai Ha Assignee: Dai Ha
Resolution: Done Votes: 0
Labels: decoration
Remaining Estimate: 0d
Time Spent: 3d 1.5h
Original Estimate: 2d

Attachments: Zip Archive light-modules+2.zip     Zip Archive light-modules.zip     PNG File problemsTab.png     HTML File stackTrace    
Issue Links:
Cloners
clones MAGNOLIA-7193 Number keys are not supported in defi... Closed
Relates
relates to MGNLREST-138 Cannot decorate the delivery endpoint Closed
relates to MGNLREST-156 SwaggerRestDispatcherServlet (re)regi... Closed
Template:
Acceptance criteria:
Empty
Task DoD:
[ ]* Doc/release notes changes? Comment present?
[ ]* Downstream builds green?
[ ]* Solution information and context easily available?
[ ]* Tests
[ ]* FixVersion filled and not yet released
[ ]  Architecture Decision Record (ADR)
Bug DoR:
[ ]* Steps to reproduce, expected, and actual results filled
[ ]* Affected version filled
Sprint: Saigon 122, Saigon 123, Saigon 124, Saigon 125, Saigon 126
Story Points: 3

 Description   

In a nutshell, I have two YAML files.
light-modules/rest-test/restEndpoints/rest1.yaml

class: info.magnolia.rest.delivery.jcr.v1.JcrDeliveryEndpointDefinition
params:
  pages:
    workspace: website
    bypassWorkspaceAcls: true
    includeSystemProperties: false
    nodeTypes:
      0: mgnl:page

and
light-modules/add-features-1/decorations/rest-test/restEndpoints/rest1.yaml

params:
  pages:
    nodeTypes:
      0: mgnl:page
      1: mgnl:component

Although decoration shows error of parsing YAML, new provider is still sent in event. This is causing further processing which messes up the current config.

Problems tab:

Stack trace: stackTrace

Light module to reproduce the issue: light-modules.zip


This is a related issue. Firstly, the endpoint worked with list syntax ( - ).
light-modules+2.zip

After deleting the decoration module, the endpoint stopped working.

info.magnolia.objectfactory.MgnlInstantiationException: Unable to resolve parameters for constructor public info.magnolia.rest.delivery.jcr.v1.JcrDeliveryEndpoint(info.magnolia.rest.delivery.jcr.v1.JcrDeliveryEndpointDefinition,javax.inject.Provider). Unresolved parameter(s) are: 1st parameter which is of type info.magnolia.rest.delivery.jcr.v1.JcrDeliveryEndpointDefinition

Modifying the main YAML file made it work again.



 Comments   
Comment by Dai Ha [ 24/Nov/17 ]

Fix to increase problem severity to SEVERE, this help avoiding endpoint to unregistered.

Generated at Mon Feb 12 04:21:36 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.