0

We moved the tridion DLL to GAC from the local webapp BIN directory.

gacutil /i Tridion.ContentDelivery.AmbientData.dll
Microsoft (R) .NET Global Assembly Cache Utility.  Version 4.0.30319.1
Assembly successfully added to the cache

However, the page is not loading and saying Could not load type 'Tridion.ContentDelivery.AmbientData.HttpModule'.

Is there anything else I need to do to make it work?

3
  • Do you have more information on the error? Have you added the cd_ambient.jar to the lib folder? What does your web.config look like? Commented Apr 10, 2014 at 19:21
  • 5
    Are you referencing the HttpModule using the strong name and PublicKeyToken? Example (check the version!): <add name="Tridion.ContentDelivery.AmbientData.HttpModule" type="Tridion.ContentDelivery.AmbientData.HttpModule, Tridion.ContentDelivery.AmbientData, Version=6.1.0.348, Culture=neutral, PublicKeyToken=ddfc895746e5ee6b" /> Commented Apr 11, 2014 at 6:05
  • 2
    Whenever you get an error loading a .NET assembly, use Fusion Log Viewer to find out why. It will tell you where it looked, if any publisher policies are being applied, why it failed to load the assembly, etc. Makes troubleshooting a lot easier. Commented Apr 11, 2014 at 8:07

1 Answer 1

1

Use the strong name and PublicKeyToken as Albert suggested. Add following in <system.web> section in your web.config

  <compilation debug="true" targetFramework="4.0">
      <assemblies>
          <add assembly="Tridion.ContentDelivery, Version=7.1.0.165, Culture=neutral, PublicKeyToken=ddfc895746e5ee6b"/>
      <!-- Other required assemblies in GAC -->
      </assemblies>
  </compilation>

xmogrt.dll needs to be in one of locations specified in the PATH environment variable, if you need netrtsn.dll in GAC. Otherwise just put them into the local BIN

2
  • I fixed my original problem, but I am getting a new one about missing "'Tridion.ContentDelivery.Preview.Web.PreviewContentModule'. I am not sure which dll is having this. Do you mind share the whole section of the web.config for adding all the tridion DLL to GAC? Thanks in advance.
    – charles
    Commented Apr 15, 2014 at 16:49
  • The module class is in Tridion.ContentDelivery.Preview.dll, with the same version number and PublicKeyToken. I think it is just easier to list my CD delivery dlls here: Tridion.ContentDelivery.AmbientData.dll, Tridion.ContentDelivery.Configuration.dll, Tridion.ContentDelivery.dll, Tridion.ContentDelivery.Interop.dll, Tridion.ContentDelivery.Preview.dll, log4net.dll. If any of these is used by your web app, it needs to be "registered" to the <assemblies> node in web.config
    – Hao Peng
    Commented Apr 15, 2014 at 17:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.