Вопрос

Мы разрабатываем веб-сайт на базе EPiServer и пытаемся развернуть нашу последнюю сборку на компьютере WinXP IIS6.

При переходе на сайт мы получаем следующую трассировку стека

[ClassFactoryException: ClassFactory not initialized]
   EPiServer.BaseLibrary.ClassFactory.get_Instance() +123
   EPiServer.BaseLibrary.Context.get_Repository() +14
   EPiServer.WorkflowFoundation.StorageProviders.ObjectStoreStorageProvider.VerifyCommonSchemas() +15
   EPiServer.WorkflowFoundation.AspNetWorkflowManager.get_StorageProvider() +44
   EPiServer.WorkflowFoundation.AspNetWorkflowManager.Initialize(Boolean lazyLoading) +589
   EPiServer.WorkflowFoundation.AspNetWorkflowManager.get_InstanceHandler() +16
   EPiServer.WorkflowFoundation.Workflows.ApprovalService..ctor() +93

[TargetInvocationException: Exception has been thrown by the target of an invocation.]
   System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck) +0
   System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean fillCache) +103
   System.RuntimeType.CreateInstanceImpl(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean fillCache) +261
   System.Activator.CreateInstance(Type type, Boolean nonPublic) +66
   EPiServer.WorkflowFoundation.WorkflowSystem.RegisterServices(IWorkflowManager manager, WorkflowSettingsElement configuration) +338
   EPiServer.WorkflowFoundation.WorkflowSystem.Init(HttpApplication context) +240
   System.Web.HttpApplication.InitModules() +267
   System.Web.HttpApplication.InitInternal(HttpContext context, HttpApplicationState state, MethodInfo[] handlers) +1251
   System.Web.HttpApplicationFactory.GetNormalApplicationInstance(HttpContext context) +243
   System.Web.HttpApplicationFactory.GetApplicationInstance(HttpContext context) +106
   System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr) +214

Я погуглил и посетил форумы EPiServer, но не нашел никаких конкретных предложений или решений.Кто-нибудь еще сталкивался с этим?

Росс

Это было полезно?

Решение

Файл конфигурации написан для IIS7, но вы создаете веб-сервер в Studio и хотите файл sonfig IIS6.Я написал об этом в заметках любого EPiServer.http://epiwiki.se/troubleshooting/classfactory-not-initialized

Другие советы

Я рискую и предполагаю, но вы случайно не занимались разработкой на EPiServer 5 SP 2 и развертыванием на EPiServer 5 SP 3?

В EPiServer 5 SP3 были внесены некоторые изменения в то, как EPiServer обрабатывает инициализацию приложения.Благодаря этим изменениям невозможно подключиться к событиям фабрики данных в Application_Start.Вместо этого вам нужно сначала подключиться к Application_FirstBeginRequest, а затем у нас будет экземпляр DataFactory для работы.

Рекомендуемое чтение

Определенно звучит как ошибка конфигурации.Как сказал Маттиас, файл web.config по умолчанию предназначен для IIS7.Это может вызвать проблемы при запуске IIS6 или Cassini.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top