Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Daniel Jensen 29 posts 160 karma points
    Jul 19, 2017 @ 14:06
    Daniel Jensen
    0

    Malformed treeview items in backoffice after update to 7.6.4 from 7.5.6

    Hi

    I upgraded a Umbraco installation from 7.5.6 to 7.6.4 yesterday, but after getting some other errors fixed, im still stuck with this one. When I log into the Backoffice, i get this error when trying to click on any file/template under either Settings-->Partial Views or Developer --> Partial View Macros.

    Also settings-->templates is giving 404 error, and developer-->macro is giving System.NullReferenceException error, but i gues thats because its a aspx file it is requesting instead of a plain .html file. (http://localhost:50959/umbraco/developer/macros/editMacro.aspx?macroID=4)

    Issue is probably still the same for both types.

    The error i get looks like this: enter image description here

    The url of the 404 is this:

    http://localhost:50959/umbraco/views/partialViews/edit.html?umb__rnd=7.6.4.undefined
    

    The label on the Partial Views menu item looks weird, so i checked out where it got it from. And it seems that this tree comes from this url request:

    http://localhost:50959/umbraco/backoffice/UmbracoTrees/ApplicationTree/GetApplicationTrees?application=settings&tree=&isDialog=false
    

    Which returns this malformed (or at least not valid) json object:

    )]}', {"isContainer":true,"children":[{"parentId":null,"hasChildren":true,"nodeType":null,"routePath":"settings","childNodesUrl":"/umbraco/backoffice/UmbracoTrees/ContentTypeTree/GetNodes?id=-1&application=settings&tree=&isDialog=false","menuUrl":"/umbraco/backoffice/UmbracoTrees/ContentTypeTree/GetMenu?id=-1&application=settings&tree=&isDialog=false","iconIsClass":true,"iconFilePath":"","cssClasses":[],"name":"Document Types","id":"-1","udi":null,"icon":"icon-folder-close","trashed":false,"key":"00000000-0000-0000-0000-000000000000","alias":null,"path":null,"metaData":{"treeAlias":"documentTypes","application":"settings","tree":"","isDialog":"false"}},{"parentId":null,"hasChildren":true,"nodeType":"bundle","routePath":null,"childNodesUrl":"/umbraco/backoffice/UmbracoTrees/LegacyTree/GetNodes?rnd=a1ecbd69b86e440895e46092bb4b1b2a&id=-1&treeType=bundlingAndMinificationTree&contextMenu=true&isDialog=false","menuUrl":"","iconIsClass":true,"iconFilePath":"","cssClasses":[],"name":"Bundling","id":"init","udi":null,"icon":"icon-folder","trashed":false,"key":"00000000-0000-0000-0000-000000000000","alias":null,"path":null,"metaData":{"treeAlias":"bundlingAndMinificationTree","jsClickCallback":"javascript:UmbClientMgr.appActions().openDashboard('settings');","application":"settings","tree":"","isDialog":"false"}},{"parentId":null,"hasChildren":true,"nodeType":null,"routePath":"settings","childNodesUrl":"/umbraco/backoffice/UmbracoTrees/TemplatesTree/GetNodes?id=-1&application=settings&tree=&isDialog=false","menuUrl":"/umbraco/backoffice/UmbracoTrees/TemplatesTree/GetMenu?id=-1&application=settings&tree=&isDialog=false","iconIsClass":true,"iconFilePath":"","cssClasses":[],"name":"Templates","id":"-1","udi":null,"icon":"icon-folder-close","trashed":false,"key":"00000000-0000-0000-0000-000000000000","alias":null,"path":null,"metaData":{"treeAlias":"templates","application":"settings","tree":"","isDialog":"false"}},{"parentId":null,"hasChildren":true,"nodeType":null,"routePath":"settings","childNodesUrl":"/umbraco/BackOffice/Api/PartialViewsTree/GetNodes?id=-1&application=settings&tree=&isDialog=false","menuUrl":"/umbraco/BackOffice/Api/PartialViewsTree/GetMenu?id=-1&application=settings&tree=&isDialog=false","iconIsClass":true,"iconFilePath":"","cssClasses":[],"name":"[partialViews]","id":"-1","udi":null,"icon":"icon-folder-close","trashed":false,"key":"00000000-0000-0000-0000-000000000000","alias":null,"path":null,"metaData":{"treeAlias":"partialViews","application":"settings","tree":"","isDialog":"false"}},{"parentId":null,"hasChildren":true,"nodeType":"initstylesheets","routePath":null,"childNodesUrl":"/umbraco/backoffice/UmbracoTrees/LegacyTree/GetNodes?rnd=c9b6c39926cd4c1a9c03572f2c3cbca5&id=-1&treeType=stylesheets&contextMenu=true&isDialog=false","menuUrl":"/umbraco/backoffice/UmbracoTrees/LegacyTree/GetMenu?id=-1&treeType=stylesheets&parentId=-1&section=settings&application=settings&tree=&isDialog=false","iconIsClass":true,"iconFilePath":"","cssClasses":[],"name":"Stylesheets","id":"init","udi":null,"icon":"icon-folder","trashed":false,"key":"00000000-0000-0000-0000-000000000000","alias":null,"path":null,"metaData":{"treeAlias":"stylesheets","jsClickCallback":"javascript:UmbClientMgr.appActions().openDashboard('settings');","application":"settings","tree":"","isDialog":"false"}},{"parentId":null,"hasChildren":true,"nodeType":"initscripts","routePath":null,"childNodesUrl":"/umbraco/backoffice/UmbracoTrees/LegacyTree/GetNodes?rnd=e860ccc01069489fb12d58ab1e153ebe&id=-1&treeType=scripts&contextMenu=true&isDialog=false","menuUrl":"/umbraco/backoffice/UmbracoTrees/LegacyTree/GetMenu?id=-1&treeType=scripts&parentId=-1&section=settings&application=settings&tree=&isDialog=false","iconIsClass":true,"iconFilePath":"","cssClasses":[],"name":"Scripts","id":"init","udi":null,"icon":"icon-folder","trashed":false,"key":"00000000-0000-0000-0000-000000000000","alias":null,"path":null,"metaData":{"treeAlias":"scripts","jsClickCallback":"javascript:UmbClientMgr.appActions().openDashboard('settings');","application":"settings","tree":"","isDialog":"false"}},{"parentId":null,"hasChildren":true,"nodeType":null,"routePath":"settings","childNodesUrl":"/umbraco/backoffice/UmbracoTrees/LanguageTree/GetNodes?id=-1&application=settings&tree=&isDialog=false","menuUrl":"/umbraco/backoffice/UmbracoTrees/LanguageTree/GetMenu?id=-1&application=settings&tree=&isDialog=false","iconIsClass":true,"iconFilePath":"","cssClasses":[],"name":"Languages","id":"-1","udi":null,"icon":"icon-folder-close","trashed":false,"key":"00000000-0000-0000-0000-000000000000","alias":null,"path":null,"metaData":{"treeAlias":"languages","application":"settings","tree":"","isDialog":"false"}},{"parentId":null,"hasChildren":true,"nodeType":"initdictionary","routePath":null,"childNodesUrl":"/umbraco/backoffice/UmbracoTrees/LegacyTree/GetNodes?rnd=99b882c269a740a39e5bd09c782c3caf&id=-1&treeType=dictionary&contextMenu=true&isDialog=false","menuUrl":"/umbraco/backoffice/UmbracoTrees/LegacyTree/GetMenu?id=-1&treeType=dictionary&parentId=-1&section=settings&application=settings&tree=&isDialog=false","iconIsClass":true,"iconFilePath":"","cssClasses":[],"name":"Dictionary","id":"init","udi":null,"icon":"icon-folder","trashed":false,"key":"00000000-0000-0000-0000-000000000000","alias":null,"path":null,"metaData":{"treeAlias":"dictionary","jsClickCallback":"javascript:openDictionary()","application":"settings","tree":"","isDialog":"false"}},{"parentId":null,"hasChildren":true,"nodeType":null,"routePath":"settings","childNodesUrl":"/umbraco/backoffice/UmbracoTrees/MediaTypeTree/GetNodes?id=-1&application=settings&tree=&isDialog=false","menuUrl":"/umbraco/backoffice/UmbracoTrees/MediaTypeTree/GetMenu?id=-1&application=settings&tree=&isDialog=false","iconIsClass":true,"iconFilePath":"","cssClasses":[],"name":"Media Types","id":"-1","udi":null,"icon":"icon-folder-close","trashed":false,"key":"00000000-0000-0000-0000-000000000000","alias":null,"path":null,"metaData":{"treeAlias":"mediaTypes","application":"settings","tree":"","isDialog":"false"}}],"parentId":null,"hasChildren":false,"nodeType":null,"routePath":null,"childNodesUrl":"","menuUrl":"","iconIsClass":true,"iconFilePath":"","cssClasses":[],"name":"Settings","id":"-1","udi":null,"icon":"icon-folder-close","trashed":false,"key":"00000000-0000-0000-0000-000000000000","alias":null,"path":null,"metaData":{"containsTrees":true}}

    Or as seen here, with the important part highlighted: enter image description here

    The other parts of the object for the functional menu items, look like "Template" instead of "[partialViews]".

    I then tried to look for the method that returns this object, but it turns out that its in the dll files of Umbraco.

    I found methods matching the methodname here, but i have no idea where to go from there, or if its a dead end:

    https://github.com/umbraco/Umbraco-CMS/search?l=C%23&q=GetApplicationTrees&type=&utf8=%E2%9C%93

    I also checked the trees.config file if the menu points looked malformed, but i didnt see anything odd looking. But for what its worth, the config file is here:

    <?xml version="1.0" encoding="utf-8"?>
    <trees>
      <!--Content-->
      <add initialize="true" sortOrder="0" alias="content" application="content" title="Content" iconClosed="icon-folder" iconOpen="icon-folder" type="Umbraco.Web.Trees.ContentTreeController, umbraco" />
      <add initialize="false" sortOrder="0" alias="contentRecycleBin" application="content" title="Recycle Bin" iconClosed="icon-folder" iconOpen="icon-folder" type="umbraco.cms.presentation.Trees.ContentRecycleBin, umbraco" />
      <!--Media-->
      <add initialize="true" sortOrder="0" alias="media" application="media" title="Media" iconClosed="icon-folder" iconOpen="icon-folder" type="Umbraco.Web.Trees.MediaTreeController, umbraco" />
      <add initialize="false" sortOrder="0" alias="mediaRecycleBin" application="media" title="Recycle Bin" iconClosed="icon-folder" iconOpen="icon-folder" type="umbraco.cms.presentation.Trees.MediaRecycleBin, umbraco" />
      <!--Settings-->
      <add initialize="true" sortOrder="0" alias="documentTypes" application="settings" title="Document Types" iconClosed="icon-folder" iconOpen="icon-folder-open" type="Umbraco.Web.Trees.ContentTypeTreeController, umbraco" />
      <add application="settings" alias="templates" title="Templates" iconClosed="icon-folder" iconOpen="icon-folder-open" type="Umbraco.Web.Trees.TemplatesTreeController, umbraco" initialize="true" sortOrder="1" />
      <add application="settings" alias="partialViews" title="Partial Views" silent="false" initialize="true" iconClosed="icon-folder" iconOpen="icon-folder" type="Umbraco.Web.Trees.PartialViewsTree, umbraco" sortOrder="2" />
      <add application="settings" alias="stylesheets" title="Stylesheets" type="umbraco.loadStylesheets, umbraco" iconClosed="icon-folder" iconOpen="icon-folder" sortOrder="3" />
      <add application="settings" alias="stylesheetProperty" title="Stylesheet Property" type="umbraco.loadStylesheetProperty, umbraco" iconClosed="" iconOpen="" initialize="false" sortOrder="0" />
      <add application="settings" alias="scripts" title="Scripts" type="umbraco.loadScripts, umbraco" iconClosed="icon-folder" iconOpen="icon-folder" sortOrder="4" />
      <add application="settings" alias="languages" title="Languages" iconClosed="icon-folder" iconOpen="icon-folder-open" type="Umbraco.Web.Trees.LanguageTreeController, umbraco" sortOrder="5" />
      <add application="settings" alias="dictionary" title="Dictionary" type="umbraco.loadDictionary, umbraco" iconClosed="icon-folder" iconOpen="icon-folder" sortOrder="6" />
      <add initialize="true" sortOrder="7" alias="mediaTypes" application="settings" title="Media Types" iconClosed="icon-folder" iconOpen="icon-folder-open" type="Umbraco.Web.Trees.MediaTypeTreeController, umbraco" />
      <!--Developer-->
      <add initialize="true" sortOrder="0" alias="packager" application="developer" iconClosed="icon-folder" iconOpen="icon-folder-open" type="Umbraco.Web.Trees.PackagesTreeController, umbraco" />
      <add initialize="true" sortOrder="1" alias="dataTypes" application="developer" title="Data Types" iconClosed="icon-folder" iconOpen="icon-folder" type="Umbraco.Web.Trees.DataTypeTreeController, umbraco" />
      <add application="developer" alias="macros" title="Macros" type="umbraco.loadMacros, umbraco" iconClosed="icon-folder" iconOpen="icon-folder" sortOrder="2" />
      <add application="developer" alias="relationTypes" title="Relation Types" type="umbraco.loadRelationTypes, umbraco" iconClosed="icon-folder" iconOpen="icon-folder" sortOrder="4" />
      <add application="developer" alias="xslt" title="XSLT Files" type="umbraco.loadXslt, umbraco" iconClosed="icon-folder" iconOpen="icon-folder" sortOrder="5" />
      <add application="developer" alias="partialViewMacros" type="Umbraco.Web.Trees.PartialViewMacrosTree, umbraco" silent="false" initialize="true" sortOrder="6" title="Partial View Macro Files" iconClosed="icon-folder" iconOpen="icon-folder" />
      <!--Users-->
      <add application="users" alias="users" title="Users" type="umbraco.loadUsers, umbraco" iconClosed="icon-folder" iconOpen="icon-folder" sortOrder="0" />
      <add application="users" alias="userTypes" title="User Types" type="umbraco.cms.presentation.Trees.UserTypes, umbraco" iconClosed="icon-folder" iconOpen="icon-folder" sortOrder="1" />
      <add application="users" alias="userPermissions" title="User Permissions" type="umbraco.cms.presentation.Trees.UserPermissions, umbraco" iconClosed="icon-folder" iconOpen="icon-folder" sortOrder="2" />
      <!--Members-->
      <add initialize="true" sortOrder="0" alias="member" application="member" title="Members" iconClosed="icon-folder" iconOpen="icon-folder-open" type="Umbraco.Web.Trees.MemberTreeController, umbraco" />
      <add initialize="true" sortOrder="1" alias="memberTypes" application="member" title="Member Types" iconClosed="icon-folder" iconOpen="icon-folder-open" type="Umbraco.Web.Trees.MemberTypeTreeController, umbraco" />
      <add application="member" sortOrder="2" alias="memberGroups" title="Member Groups" type="umbraco.loadMemberGroups, umbraco" iconClosed="icon-folder" iconOpen="icon-folder" />
      <!--Translation-->
      <add silent="false" initialize="true" sortOrder="1" alias="openTasks" application="translation" title="Tasks assigned to you" iconClosed="icon-folder" iconOpen="icon-folder" type="umbraco.loadOpenTasks, umbraco" />
      <add silent="false" initialize="true" sortOrder="2" alias="yourTasks" application="translation" title="Tasks created by you" iconClosed="icon-folder" iconOpen="icon-folder" type="umbraco.loadYourTasks, umbraco" />
      <!-- Custom -->
      <!--<add application="myApplication" alias="myTree" title="Me Tree" type="MyNamespace.myTree, MyAssembly"
       iconClosed="icon-folder" iconOpen="icon-folder" sortOrder="10" />-->
      <add initialize="true" sortOrder="2" alias="datasource" application="forms" title="Datasources" iconClosed="icon-folder" iconOpen="icon-folder-open" type="Umbraco.Forms.Web.Trees.DataSourceTreeController, Umbraco.Forms.Web" />
      <add initialize="true" sortOrder="0" alias="form" application="forms" title="Forms" iconClosed="icon-folder" iconOpen="icon-folder-open" type="Umbraco.Forms.Web.Trees.FormTreeController, Umbraco.Forms.Web" />
      <add initialize="true" sortOrder="3" alias="prevaluesource" application="forms" title="Prevalue sources" iconClosed="icon-folder" iconOpen="icon-folder-open" type="Umbraco.Forms.Web.Trees.PreValueSourceTreeController, Umbraco.Forms.Web" />
      <add initialize="true" sortOrder="0" alias="GridEditorManager" application="developer" title="Grid Editors" iconClosed="icon-doc" iconOpen="icon-folder-open" type="Lecoati.LeBlender.Extension.Controllers.LeBlenderEditorManagerTreeController, Lecoati.LeBlender.Extension" />
      <add initialize="true" sortOrder="0" alias="bundlingAndMinificationTree" application="settings" title="Bundling" iconClosed=".sprTreeFolder" iconOpen=".sprTreeFolder_o" type="Optimus.Umbraco.Trees.BundlingAndMinificationTree, Optimus" />
    </trees>
    

    Best regards

  • Dave Woestenborghs 3504 posts 12135 karma points MVP 9x admin c-trib
    Jul 20, 2017 @ 12:49
    Dave Woestenborghs
    0

    Hi Daniel,

    Looking at your screenshot of the backend I think your update was not successfull... It still show the old black colours...while 7.6.x has the new purple/turquoise theme.

    Maybe you can try to clear your browser cache ? If that doesn't help look for the Clientdependency folder in App_Data folder and remove it. This will regenerate all the client sides assets bundled by Umbraco backend.

    dave

Please Sign in or register to post replies

Write your reply to:

Draft