Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeUsing DNN Platf...Using DNN Platf...Upgrading DNN P...Upgrading DNN P...HTML module error after upgrade from 5.4 to 6.2HTML module error after upgrade from 5.4 to 6.2
Previous
 
Next
New Post
3/15/2013 3:04 PM
 

Windows Server 2008.  Sql Server 2008.  I moved my 5.4 DNN to a new local server - the same server that is running Sql Server.  After moving it over and updating the PortalAlias records it came up with out a problem.  I was running it in Classic App Pool mode & .NET 2.0.

I extracted the DNN 06.02.06 files, copied them over my site's root contents, browsed to Install.aspx - all flying colors so far.  Success, Success, Success....

When I browse to the site I can log in.  But every HTML module in the site displays a pink error box containing the same error:

What is going on?  I followed installation instructions  to the letter.

Error: Text/HTML is currently unavailable. DotNetNuke.Services.Exceptions.ModuleLoadException: Cannot use 'vb' because another language has been specified earlier in this page (or was implied from a CodeFile attribute). ---> System.Web.HttpParseException: Cannot use 'vb' because another language has been specified earlier in this page (or was implied from a CodeFile attribute). ---> System.Web.HttpParseException: Cannot use 'vb' because another language has been specified earlier in this page (or was implied from a CodeFile attribute). ---> System.Web.HttpException: Cannot use 'vb' because another language has been specified earlier in this page (or was implied from a CodeFile attribute). at System.Web.UI.TemplateParser.ProcessError(String message) at System.Web.UI.TemplateParser.ProcessScriptTag(Match match, String text, IDictionary attribs, Boolean fSelfClosed) at System.Web.UI.TemplateParser.ProcessBeginTag(Match match, String inputText) at System.Web.UI.TemplateParser.ParseStringInternal(String text, Encoding fileEncoding) --- End of inner exception stack trace --- at System.Web.UI.TemplateParser.ProcessException(Exception ex) at System.Web.UI.TemplateParser.ParseStringInternal(String text, Encoding fileEncoding) at System.Web.UI.TemplateParser.ParseString(String text, VirtualPath virtualPath, Encoding fileEncoding) --- End of inner exception stack trace --- at System.Web.UI.TemplateParser.ParseString(String text, VirtualPath virtualPath, Encoding fileEncoding) at System.Web.UI.TemplateParser.ParseFile(String physicalPath, VirtualPath virtualPath) at System.Web.UI.TemplateParser.Parse() at System.Web.Compilation.BaseTemplateBuildProvider.get_CodeCompilerType() at System.Web.Compilation.BuildProvider.GetCompilerTypeFromBuildProvider(BuildProvider buildProvider) at System.Web.Compilation.BuildProvidersCompiler.ProcessBuildProviders() at System.Web.Compilation.BuildProvidersCompiler.PerformBuild() at System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath virtualPath) at System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate) at System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate) at System.Web.Compilation.BuildManager.GetVPathBuildResult(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean ensureIsUpToDate) at System.Web.UI.TemplateControl.LoadControl(VirtualPath virtualPath) at DotNetNuke.UI.Modules.WebFormsModuleControlFactory.CreateModuleControl(TemplateControl containerControl, ModuleInfo moduleConfiguration) at DotNetNuke.UI.Modules.ModuleControlFactory.LoadModuleControl(TemplateControl containerControl, ModuleInfo moduleConfiguration) at DotNetNuke.UI.Modules.ModuleHost.LoadModuleControl() --- End of inner exception stack trace ---

 
New Post
3/15/2013 4:41 PM
 
Darn...10 views and not a single reply. I don't understand. How could a site work beautifully then completely bomb when upgrading to the next version? And, before anyone suggest that I move to 7 - I don't have that option. I use an LMS moduel that is not yet compatible.
 
New Post
3/16/2013 6:15 AM
Accepted Answer 

This issue is most likely being caused by a conflict between a custom module or skin object installed on your site and evolutionary changes made to dnn in 6.0.

As of verison 6, DNN's core source code is now based on C#  and many of the core modules are also based on C#.

When the system runs - and encounters source code that needs to be dynamically compiled - unless that code is partitioned in some way - the system will fail if it encounters code is both C# and VB.NET that needs to be dynamically compiled on the same page.

In the past this was not a problem for modules that were coded in VB.NET since prior to 600 the core was written in VB.NET so there was no conflict.

But now the core is coded in C# and includes a number of elements on the page that may require dynamic compilation - this can lead to issues with older VB.NET modules.

There is however a way to deal with this in most cases - firstly you need to look at the folders in your hosting using FTP or some other tool that lets you look at the actual website root directory.

You are looking for a folder called  /App_Code/ -  take a note of all the names of subfolders inside this folder.

Next up - you need to edit the web.config file which is also in the site root directory -  Make sure you take a copy of this file as a backup before doing anything else.

You are looking for a part of the web.config that starts with <codeSubDirectories>  and follows on with a list of <add directoryName blocks after that.
It will look something like the following - note this can vary greatly depending on your site contents.

<codeSubDirectories>
<add directoryName="IFrame"/>
<add directoryName="Links"/>
<add directoryName="RazorHelpers"/>
<add directoryName="LepBusiness"/>
<add directoryName="LepBusApp"/>
<add directoryName="LEPURLRewriter"/>
<add directoryName="ADefHelpDesk"/>
</codeSubDirectories>

What you then need to do is add a <add directoryName="myfoldername" /> block for EVERY subfolder you wrote down from the /App_Code/ folder we looked at previously that is not currently listed.    You will need to be a little careful here - since in the default webconfig there may only be a section that is commented out that looks like:

<!-- register your app_code subfolders to generate granular assemblies during compilation
      <codeSubDirectories> 
        <add directoryName="sub-directory name"/> 
      </codeSubDirectories>
      -->

Adding the directories inside this code block would serve no point - since the <!--     -->  that is wrapped around the block effectively comments it out.

If this is the only are this code exists - then you can uncomment the block by moving the -->  to look like this

<!-- register your app_code subfolders to generate granular assemblies during compilation
   -->
    <codeSubDirectories>
     <add directoryName="change to your subdirectory" /> 
     </codeSubDirectories>

If you cant find this code at all look for some markup that looks like

</compilation>

And put your block of code immediately before it.

Once you have completed this change to you web.config - your custom module may be able to better handle the new version on DNN. 

Now having said this - there have also been a large number of core changes in DNN in recent generations - and depending how compliant your custom module was - it could also break for other reasons.

Hope this gives you a head start in some way.

Westa


 
New Post
3/18/2013 5:16 PM
 
Thanks Wes - the only modules in App Code are the typical - Links, Survey, & IFrame and they're all included in the web.config. I did have one custom module that was writtenin vb but that was uninstalled prior to the upgrade. Could there be remanants soemwhere causing issues?
 
New Post
3/18/2013 5:53 PM
 

Hi Wes,

    A minor breakthrough - I think - but I'm not sure what it means.

I discovered that my 3rd party skin is not DNN 6 compatible.  So, I bought a new one that is.  On my home page I was seeing 2 errors like the one I posted.  1 was exactly what I posted - the first line being "Error: Text/HTML is currently unavailable..." the other had a 1st line that read "Error: Logo is currently unavailable...".  Both were the same VB related error message.  The HTML error was for a HTML module but the logo was the typical corporate logo that exists at the top left of a typical DNN install.  (it's been a while since I set this site up - I hope I'm making sense).

So, I browsed to the home page - Page Settings - and I changed the page skin and default container to the new DNN 6 skin.  The logo immediately showed up.  So far so good.  I then changed every HTML module's container (on the home page) to one from the new DNN 6 skin as well.  The errors still persist.

Any thoughts?  I thought I was on to something but not sure where to go now.  Anything I can tell from doing a "View Source" perhaps - or some other proces to determine what is causing the VB compile attempt?

Thanks. 

 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Upgrading DNN P...Upgrading DNN P...HTML module error after upgrade from 5.4 to 6.2HTML module error after upgrade from 5.4 to 6.2


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out