JsonErrorHandlingAttribute swallows exceptions and should be removed

Fixed in

EPiServer.CMS.UI 11.1.0

Created

Aug 26, 2015

Updated

Jun 27, 2018

Area

CMS UI

State

Closed, Fixed and tested


Description

Any exception thrown when updating partially rendered content is swallowed, and all that is returned is a json formatted object with an error property. This behaviour hides the real error and complicates debugging. And since these errors are unexpected and unknown, the actual error should be returned. We should also notify the user that an error has occured. Right now, nothing happens.

Steps to reproduce in the Alloy MVC Templates (until #126186 has been fixed)

1. Add the [HttpGet] attribute to the Index action of the ContactBlockController.
2. Add a new contact block to a ContentArea.

Expected: A HTTP 500 error is shown in the browser network log.
Actual: The content area is not updated, and the call to PropertyRender/Render returns

1. error: "Error executing child request for handler 'System.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerWrapper'."
2. isValid: false
3. saved: false