Question

After updating DNN to the latest version, my site is not working. I suspect it to be a theme-related issue as I have been doing some debugging. But I can not narrow it down further.

The current stacktrace from my site looks like this:

[NullReferenceException: Object reference not set to an instance of an object.]
    DotNetNuke.UI.Containers.ActionBase.get_ModuleContext() +6
    DotNetNuke.UI.Containers.ActionBase.get_ActionRoot() +30
    DotNetNuke.UI.Containers.ActionBase.OnLoad(EventArgs e) +42

[ModuleLoadException: An error has occurred.]
    DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(String FriendlyMessage, Control ctrl, Exception exc, Boolean DisplayErrorMessage) +400

[PageLoadException: An error has occurred.]
    DotNetNuke.Services.Exceptions.Exceptions.ProcessPageLoadException(Exception exc, String URL) +323
    DotNetNuke.Services.Exceptions.Exceptions.ProcessPageLoadException(Exception exc) +89
    DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(String FriendlyMessage, Control ctrl, Exception exc, Boolean DisplayErrorMessage) +525
    DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(Control ctrl, Exception exc, Boolean DisplayErrorMessage) +189
    DotNetNuke.Services.Exceptions.Exceptions.ProcessModuleLoadException(Control ctrl, Exception exc) +40
    DotNetNuke.UI.Containers.ActionBase.OnLoad(EventArgs e) +85
    DotNetNuke.Web.DDRMenu.Actions.OnLoad(EventArgs e) +67
    System.Web.UI.Control.LoadRecursive() +50
    System.Web.UI.Control.LoadRecursive() +141
    System.Web.UI.Control.LoadRecursive() +141
    System.Web.UI.Control.LoadRecursive() +141
    System.Web.UI.Control.LoadRecursive() +141
    System.Web.UI.Control.LoadRecursive() +141
    System.Web.UI.Control.LoadRecursive() +141
    System.Web.UI.Control.LoadRecursive() +141
    System.Web.UI.Control.LoadRecursive() +141
    System.Web.UI.Control.LoadRecursive() +141
    System.Web.UI.Control.LoadRecursive() +141
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627

[PageLoadException: An error has occurred.]
    DotNetNuke.Services.Exceptions.Exceptions.ProcessPageLoadException(Exception exc, String URL) +323
    DotNetNuke.Framework.PageBase.OnError(EventArgs e) +450
    System.Web.UI.Page.HandleError(Exception e) +84
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +6776
    System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +242
    System.Web.UI.Page.ProcessRequest() +80
    System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context) +21
    System.Web.UI.Page.ProcessRequest(HttpContext context) +49
    ASP.default_aspx.ProcessRequest(HttpContext context) in c:\windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\84194812\86a29f2c\App_Web_toxjy2nh.0.cs:0
    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +181
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75

From this I can see it has something to do with the DDRMenu component. I've tried my own skins for the site, and for those the exact same line says something about SolPartMenu/Action.

Help is much appreciated!

Was it helpful?

Solution

I had same problem during testing for a move to 6.x and you need to have the latest version of DDR menu, but I suspect that because you can't log-in, you can't install it.

I'm not sure which steps, if any you can cut out of this, but this is what I did.

  1. revert to 5.6.3 from backups
  2. Turn off compression in host settings
  3. Set Minimal Extropy as default skin
  4. set en-US as default language (not sure if this is necessary, it was for one upgrade and I tend to do it for major upgrades now)
  5. Set DNN Nav as the defaut navigation provider in web.config
  6. Change containers to use <%@ Register TagPrefix="dnn" TagName="ACTIONS" Src="~/Admin/Containers/Actions.ascx" %>
  7. Uninstall DDRmenu 1.2.2
  8. Remove DDRMenuNavigationProvider in web.config
  9. Take new backups of database and file system
  10. Upgrade to 6.x
  11. Upgrade to DDR Menu v2.00.0
  12. Set application pool to use .Net4
  13. Re-apply skin to a couple of pages to check all works, if ok reset default skin
  14. Reset compression and default language if necessary

Hope this helps

OTHER TIPS

The problem you're seeing results from a conflict between how the DNN Upgrader runs and how the new DDR Menu wants to be upgraded. The DNN upgrader pushes the DDRMenu.dll into the bin directory but doesn't run the IUpgrade code for it so the DLL, code, and web.config settings don't match. The next version of the DDR Menu should resolve this issue.

Barry's recommendation should resolve the issue though it's more steps than I would take. The first thing I would try is replacing the new DDRMenu DLL (DotNetNuke.Web.DDRMenu.dll) with the old one from before the upgrade and see if that gets your site running. If it does, then you can install the newest version of the DDRMenu and you should be good to go.

If that doesn't work I usually try a combination of code and settings from the code prior to upgrade and good installs of DNN 6.1.1 that did go smoothly until the problem resolves. I wish I had a more specific answer but I'm usually in a hurry (cause the site's down) so I haven't taken the time to write up a more scientific approach.

Again, this should be resolved with the next version of the DDR Menu and the problem only affects sites that were already using the DDR Menu. But still, it's not as smooth as it should be.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top