Can’t add “pages” in DNN9?

By: Chris Hammond
Published Date 1/2/2017
Last Updated Monday, January 02, 2017 2:45 PM

If you are having problems adding Pages in DNN 9, read this blog post.

I recently upgraded all of my sites to DNN 9, the most recent one being upgraded last night. This morning I wake up to an email from a client of mine reporting a problem with adding pages in one of their sites that they also upgraded to DNN recently. I read through their email, and decide that I’ll look into their issue a bit later, have an itch to scratch on one of my own websites, so I’ll get to them later (sorry client).

Working on this site that I upgrade last night, I decided I wanted to add another page to the site, low and behold, I was unable to do so.

To add a page in DNN9 you click on the “Content” option in the persona bar, and then the Pages option. There you will be presented with a view similar to this:

image

When I clicked on Add Page there, the screen went blank, like so:

image

That’s not very useful, actually that is as far from useful as possible. Once that happens, you can’t actually “do” anything from an Admin perspective. You have to “leave” this page, go somewhere else (click on manage/users for example, then you might need to click BACK in your browser a bunch of times) then you can click on Content/Pages again to get back into the Page listing for a site.

So why is the persona bar page blank? This error is the cause:

GET https://SOMEPORTALALIASHERE/API/PersonaBar/Pages/GetDefaultSettings? 500 (Internal Server Error)

If you dig into the DNN Error Log (Admin Logs) a bit you might find a more detailed error, something along the lines of

Message:Value cannot be null. Parameter name: source

StackTrace:

at System.Linq.Enumerable.FirstOrDefault[TSource](IEnumerable`1 source, Func`2 predicate) at Dnn.PersonaBar.Pages.Components.TemplateController.GetDefaultTemplateId(IEnumerable`1 templates) at Dnn.PersonaBar.Pages.Components.PagesControllerImpl.GetDefaultSettings() at Dnn.PersonaBar.Pages.Services.PagesController.GetDefaultSettings() at lambda_method(Closure , Object , Object[] ) at

So what does that message tell you? Well something is happening with your DNN Install trying to get a list of “page templates”. In digging further, on my site, I found the issue to be the File Permissions on the Templates folder in the portals/0/ directory. For some reason on the site that I upgraded last night, my permissions were set to ALL USERS DENY on the “Browse Files in Folder” and “Open Files in Folder” check boxes.

image

Unchecking those, clicking SAVE resolved my “pages” persona bar issues. How did those permissions get set? Who knows, this DNN site has been around since 2008 or earlier, and that never caused a problem.

There are definitely some “kinks” to be worked out of DNN9, but so far I am digging the new experience.

Regarding my “client”’s site, they had a similar, but different issue. In their case, the TEMPLATES folder didn’t exist in the Portal that they were trying to use. Simply creating a new Templates folder in their File Manager fixed that problem for their site.

Recent Comments

Thanks Chris.
Posted By: erik h on Thursday, January 05, 2017 3:13 PM

Thanks Chris! This just happened with a new site of mine and I thought I was losing it.

Posted By: Michael Snyder on Saturday, January 07, 2017 5:01 PM
please disregard previous comment - - found the setting and after clicking save it started working again - thanks for the help, Allen
Posted By: allen Hunsucker on Wednesday, February 22, 2017 4:47 PM
Hi Chris - i'm suddenly having the same issue described in your post - and i'm new to DNN - would you mind telling me how to get to the "Templates folder Info" page? i can't seem to find it.. sorry for the newb question
Posted By: allen Hunsucker on Wednesday, February 22, 2017 4:22 PM

Add Comment

Please add your comment by filling out the field(s) below. Your comment may need to be approved before it becomes visible.
Enter your first name for display with the comment
Enter your last name for display with the comment.
Enter your email address so that we may contact you if necessary. We will also use this for your Gravatar.
Enter the URL to your website. URLs may be removed from comments.
Enter your comment here.
If you can't type Human in, you can't post, plain and simple.
Submit Comment Cancel

Chris Hammond is

Chris Hammond is a father, husband, leader, developer and car guy. Chris has long specialized in ASP.NET and DotNetNuke development, so you will find a variety of topics here on the website. For more information check out the about me page.

If you are looking for DotNetNuke consulting please visit my business website at http://www.christoc.com/

Disclaimer

Any blog posts here are solely the opinion and views of Chris Hammond only. Comments on blog posts are the opinion of the commenter, and not Chris Hammond.

Powered By

This website is managed by Christoc.com Software Solutions

DotNetNuke Hosting

Hosting for this website is provided by AppliedI.Net. Be sure to visit them for all your DotNetNuke Hosting needs. 

Find Me