I'm trying to deploy our .NET web application using Tridion Delivery API to a local dev server. The machine is x64 and has a proper cd_licenses.xml file and the cd_*_config.xmls are all pointing to its proper location.
We have installed the JDK 1.6_45 and placed the dependency DLLs in the app's bin as per this post: https://stackoverflow.com/questions/13918310/unable-to-load-dll-xmogrt-from-tridion-metadata-query
However, we still get the following error:
An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
Server Error in '/' Application.
An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
Source Error:
Line 56: }
Line 57: }
Line 58: IPage model = GetModelForPage(pageId);
Line 59: if (model == null) { throw new HttpException(404, "Page cannot be found"); }
Line 60: this.ViewBag.Page = model;
Source File: C:\Development\Clients\project\project-dd4t\Project\DD4T.Web.Mvc\PageController.cs Line: 58
Stack Trace:
[BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)]
Codemesh.JuggerNET.NativeInterface.GetJvmLoader(Int32 ctorVersion, String configFile, String vers, String conf, String reserved, Boolean bEnvOverrides, Boolean bDefaultJvm, Int32 traceFacility, Int32 traceLevel, Int32& error) +0
Codemesh.JuggerNET.JvmLoader.GetJvmLoader(Boolean bEnvOverrides, Boolean bDefaultJvm, TraceFacility fac, TraceLevel level) +246
Codemesh.JuggerNET.JvmLoader.GetJvmLoader() +64
Codemesh.JuggerNET.JavaClass.init() +119
Codemesh.JuggerNET.JavaClass.get_JObject() +51
Codemesh.JuggerNET.JavaMethod.init() +1652
Codemesh.JuggerNET.JavaMethod.get_MethodPtr() +61
Codemesh.JuggerNET.JavaMethod.get_Handle() +80
Codemesh.JuggerNET.JavaMethod.CallObject(JavaProxy jpo) +422
Com.Tridion.Broker.Querying.Query..ctor() +101
Tridion.ContentDelivery.DynamicContent.Query.Query..ctor() +32
DD4T.Providers.SDLTridion2011sp1.TridionPageProvider.GetContentByUrl(String Url) in C:\Projects\Dynamic Delivery Presentation\dotnet\DD4T.Providers.SDLTridion2011sp1\TridionPageProvider.cs:109
DD4T.Factories.PageFactory.TryFindPage(String url, IPage& page) in C:\Projects\Dynamic Delivery Presentation\dotnet\DD4T.Factories\PageFactory.cs:131
DD4T.Mvc.Controllers.TridionControllerBase.GetModelForPage(String PageId) in C:\Projects\Dynamic Delivery Presentation\dotnet\DD4T.Mvc\Controllers\TridionControllerBase.cs
We have checked the default Java version installed by running java -version
. It shows the following:
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01, mixed mode)
We've also verified that the CPU on the machine is x86_64 compatible (AMD Opteron 2374 HE). However, we still this error. Any suggestions?