启动EPiServer网站时出现异常

发布于 2024-07-07 03:40:55 字数 1979 浏览 15 评论 0原文

我们正在开发一个基于 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 论坛,但我没有找到任何具体的建议或解决方案。 还有其他人遇到过这个吗?

罗斯

We're developing an EPiServer-based website and trying to deploy our latest build onto a WinXP IIS6 box.

When browsing to site, we're getting the following stack trace

[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

I've googled it, and visited the EPiServer forums, but I've not found any concrete suggestions or solutions. Has anyone else out there run into this?

Ross

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

如痴如狂 2024-07-14 03:40:55

配置文件是为 IIS7 编写的,但您在 Studio 中构建的 Web 服务器需要 IIS6 sonfig 文件。
我在 ny EPiServer 笔记中写过这个
http://epiwiki.se/troubleshooting/classfactory-not-initialized

The configuration file is written for IIS7 but you build in webserver in Studio want a IIS6 sonfig file.
I have wrote abut this in ny EPiServer notes
http://epiwiki.se/troubleshooting/classfactory-not-initialized

梦里南柯 2024-07-14 03:40:55

我在这里冒险猜测,但是您是否偶然在 EPiServer 5 SP 2 上进行开发并在 EPiServer 5 SP 3 上部署?

在 EPiServer 5 SP3 中,EPiServer 处理应用程序初始化的方式进行了一些重构。 这些更改使得无法挂钩到 Application_Start 中的数据工厂事件。 相反,您需要首先挂钩 Application_FirstBeginRequest,然后我们就有一个可以使用的 DataFactory 实例。

建议阅读

I am going out on a limb and guessing here, but did you by chance do development on EPiServer 5 SP 2 and deploy on EPiServer 5 SP 3?

In EPiServer 5 SP3 there was some remodelling in how a EPiServer handles the initialization of the application. These changes made it so that it's not possible to hook into the datafactory events in Application_Start. Instead you need to first hook into Application_FirstBeginRequest and then we have a instance of the DataFactory to work with.

Suggested reading

淡淡的优雅 2024-07-14 03:40:55

听起来绝对像是配置错误。 正如 Mattias 所说,默认的 web.config 适用于 IIS7。 这可能会在运行 IIS6 或 Cassini 时导致问题。

Definitely sounds like a configuration error. As Mattias said, the default web.config is for IIS7. This can cause problems when running IIS6 or Cassini.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文