Gadgets Disappear after build

Vote:
 

I am having issues on several site which a new build has been pushed, Gadgets in the dashboard and in the "Add Gadgets" menu disappear.  Is there a way to fix this.  This has been happening on more than one site with non "Core" episerver gadgets.

#71595
May 23, 2013 18:05
Vote:
 

We have a similar issue, though in our case the "Add Gadgets" menu doesn't disappear. I've noticed this only happens with gadgets that are specified within the <publicModules> element in web.config. The gadget that comes with EPiServer.GoogleAnalytics seems to not suffer from the same issue. Usually a site restart or an IIS reset will make the gadgets reappear, though it doesn't work 100% of the time.

One suggested thing to try is to switch autoDiscovery to "Minimal" instead of "Modules" in the <publicModules> element in web.config. I'm currently testing this on a couple projects that use gadgets, and it seems that it might help, though I'm not fully sure that's the solution.

#71597
May 23, 2013 18:26
Vote:
 

Thanks Chris.  I have tried changing it to Minimal and i still can;t get it to comeback.  Here is the steps that work about 50% of the time and i keep repeating it until it does.

  1. Stop IIS
  2. delete asp.net temp files
  3. reset personalizationUI Settings
  4. restart IIS
  5. refresh page.

It comes back about 50% of the time for my gadget.  When developing, it is impossible to do this over and over while developing.  Then i get a "No parameterless constructor defined for this object".  This happens on only public modules like you metioned and non of episervers built in gadets.  I am at a loss on what to even do next.  I do appreciate the response.  Seems like these kind of issues alway fall on deaf ears.

#71599
Edited, May 23, 2013 22:37
Vote:
 

When I'm developing my TestGadget, I randomly get an assembly error:

"The assembly EPiServer.Shell, Version=7.0.859.8, Culture=neutral, PublicKeyToken=8fe83dea738b45b7 cannot be registered for module TestGadget since it has already been registered by module Shell."

I can sometimes make this go away by rebuilding the project or simply refreshing the page, but it's just so random.

My TestGadget follows this guide very closely: http://sdkbeta.episerver.com/SDK-html-Container/?path=/SdkDocuments/EPiServerFramework/7/Knowledge%20Base/Developer%20Guide/OnlineCenter/Developing%20Gadgets.htm&vppRoot=/SdkDocuments//EPiServerFramework/7/Knowledge%20Base/Developer%20Guide/

I currently have a support ticket regarding this, a colleague of mine has the same issue on another project, and we have a site nearing production launch that's also having the same issue. I'm kinda surprised a solution to this hasn't been found, or if it has been found, that's it not visible... then again, I wonder how many people are making dashboard gadgets...

 
#71602
May 23, 2013 22:50
Vote:
 

Hey Chris, I can say I haven't had that issue yet.  There has to be something episerver can enlighten us on.  There has to be something different from what is exposed to us developers compared to how episerver handles this.  There's never disappear and it seems like any gadget that is not episervers default ones continue to disappear.  The link you specified is the same one i have used as a reference when developing my gadgets as well.  I have seen it as well on the BVN redirect manager gadget as well.  Well, lets hope episerver dev's respond on this post to put this baby to bed.  EXTREMELY FRUSTRATING and losing my patients with EPiServer 7.

#71607
May 24, 2013 2:19
Vote:
 

Actually, the BVN redirect gadget is the dashboard gadget I'm referring to that's on the site nearing launch... And that's a gadget that's actually really useful.

I'll keep you updated if I hear anything within my support ticket.

#71608
May 24, 2013 3:28
Vote:
 

Gracias kind sir.  Hopefully we can get this resolved soon.  I haven;t seent he error on the bvn gadget you are referencing.  Weird.  Something tricky is happening.  All we can do is keep trying stuff but at what point to you just say "I can't fix this".  Ill keep you posted on my endevours as well.  Again, Chris, thanks for you help.

#71640
May 24, 2013 18:44
Vote:
 

That error was separate from the BVN issue. I ended up having a unused bin folder that was causing issues.

#71641
May 24, 2013 18:46
Vote:
 

I can confirm that we have a bug in the loading process of module assemblies registered in web.config, and just like you've observed, it has a bit of randomness to it. We have two providers loading and initializing modules and unfortunately we've managed to shadow them, and since one of them doesn't take assembly information from web.config into consideration it depends on which provider gets queried first.

The easiest work-around before the issue gets patched is to move any assembly registrations to a module.config inside the module folder.

<module>
  <assemblies>
    <add assembly="ModuleAssembly" />
  </assemblies>
</module>
#71749
May 28, 2013 11:24
Vote:
 

This seems to have done the trick.  Thanks for providing a work around.  Much Appreciated as I am sure Chris will appreciate as well!!!!!

#71771
May 28, 2013 17:05
Vote:
 

That I do. Thanks for this. Many headaches relieved.

#71772
May 28, 2013 17:07
Vote:
 

INDEED

#71774
May 28, 2013 17:11
Vote:
 

Thanks for providing the workaround. But, I'm not sure what the change should be. This is my configuration for BVN gadget in the web.config. Do I need to remove this registeration?

<episerver.shell>
    <publicModules rootPath="~/modules/" autoDiscovery="Modules">
      <add name="BVNetwork.FileNotFound.RedirectGadget">
        <assemblies>
          <add assembly="BVNetwork.FileNotFound.RedirectGadget" />
        </assemblies>
      </add>
    </publicModules>
    <protectedModules rootPath="~/EPiServer/"></protectedModules>
  </episerver.shell>
    
Thanks!
#71794
Edited, May 29, 2013 12:18
Vote:
 

In the modules folder of your application there's a folder containing the redirect gadget. In this folder you have to create a file named module.config with the following content:

<?xml version="1.0" encoding="utf-8" ?>
<module>
  <assemblies>
    <add assembly="BVNetwork.FileNotFound.RedirectGadget" />
  </assemblies>
</module>

Then remove the corresponding assemblies configuration from your web.config

#71802
May 29, 2013 16:22
Vote:
 

I added it to moduls.cofig but also need to remove assembly registeration from web.config now. 

Thanks for the help!

#71803
May 29, 2013 16:26
This thread is locked and should be used for reference only. Please use the Episerver CMS 7 and earlier versions forum to open new discussions.
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.