Bug reports Found a bug? Post it here please.
Version 7.x > Bug reports > Adding a widget based on the custom table repeater or custom table repeater with effect web parts puts the editor into safe mode when the page is saved. View modes: 
User avatar
Member
Member
SYDA Developer LV - 8/21/2013 2:58:34 PM
   
Adding a widget based on the custom table repeater or custom table repeater with effect web parts puts the editor into safe mode when the page is saved.
The error as logged appears at the end of this post.

The error occurs in these circumstances:

A widget based on the the custom table repeater or custom table repeater with effect web parts is added to a page.
The widget's Custom Table property is displayed in the editing form.
The Custom Table property's Form Control is Custom Table Selector.
The page is saved.

The widget can be safely added to the page after the rest of the content is in place, as the repeater will still load and the rest of the page's content will not be erased, but it is impossible to save any changes to the page while the repeater widget is in place.

This problem is not present with a web part repeater or with a custom table datagrid-based widget (which also has the Custom Table property)

This problem is not present if no value is assigned to the Custom Table property, but if it is included in the editor with the custom table selector form control, it is automatically given a value. If the property is not displayed in the editing form, but a default is set from the site manager, the error will still occur.

Description:
Message: Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.
Stack Trace:
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState)
at System.Web.UI.Control.LoadViewStateRecursive(Object savedState)
at System.Web.UI.Page.LoadAllState()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

Event URL: /cms/getdoc/e10cc303-e51c-4a11-8407-bd98ae838302/talk-enjoy-the-moment-laugh-a-lot.aspx?viewmode=3&lang=en-US&langobjectlifetime=request

URL referrer: http://localhost:8081/cms/getdoc/e10cc303-e51c-4a11-8407-bd98ae838302/talk-enjoy-the-moment-laugh-a-lot.aspx?viewmode=3&lang=en-US&langobjectlifetime=request

User avatar
Kentico Support
Kentico Support
Accepted solutionAccepted solution
kentico_janh - 8/22/2013 1:36:57 AM
   
RE:Adding a widget based on the custom table repeater or custom table repeater with effect web parts puts the editor into safe mode when the page is saved.
Hello,

Could you please open properties of that webpart/widget zone and set the Disable view state to true?

Best regards,
Jan Hermann

User avatar
Member
Member
Accepted solutionAccepted solution
SYDA Developer LV - 8/22/2013 8:45:23 AM
   
RE:Adding a widget based on the custom table repeater or custom table repeater with effect web parts puts the editor into safe mode when the page is saved.
That's fixed it. Thanks. I don't know how I managed to not see that option; it should have been the first thing I tried.