我一直在查看Sitecore。内核,但似乎找不到Sitecore运行初始化管道的位置。它是在每个页面请求上运行还是在应用程序启动时只运行一次?你能告诉我为这个管道调用Run方法的确切位置吗?
更新我最后问这个问题的原因是因为我在Sitecore的代码中追溯了mvc.requestStart
管道的执行。这是我发现的:
初始化
管道运行初始化路由
处理器...Sitecore。Mvc。管道。加载器。初始化路由。进程(PipelineArgs args)
调用...Sitecore。Mvc。管道。加载器。初始化路由。注册路由(RouteCollection路由,PipelineArgs args)
调用...Sitecore。Mvc。管道。加载器。初始化路由。SetRouteHandler(RouteCollection路由,PipelineArgs args)
创建新的RouteHandlerWrapper
对象事情变得有点模糊。。。
Sitecore。Mvc。路由。RouteHandlerWrapper。GetHttpHandler(RequestContext RequestContext)
返回新路由HttpHandler然后,最后。。。
Sitecore。Mvc。路由。RouteHttpHandler。ProcessRequest(HttpContext上下文)
调用Sitecore。Mvc。路由。RouteHttpHandler。BeginRequest()
运行mvc。请求开始管道Sitecore中有一个SetActiveSite方法。上下文类。这将运行初始化管道,并且有几个地方可以调用该方法。
因此,它似乎与上下文的初始化相关联,因此不只是在应用程序的开头。
有关信息,我通过搜索“initialize”(包含引号)找到了这一点,其中发现:
CorePipeline.Run("initialize", new PipelineArgs());
我决定尝试在Sitecore 7.2的干净安装中添加一些调试。我创建了以下简单类:
using Sitecore.Diagnostics;
using Sitecore.Pipelines;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Web;
namespace SCMVC72.Pipelines
{
public class DebugStackTrace
{
public void Process(PipelineArgs args)
{
StackTrace st = new StackTrace();
Log.Info(string.Empty, (object)this);
Log.Info("*********************************************************************", (object)this);
Log.Info("Debug StackTrace", (object)this);
Log.Info(st.ToString(), (object)this);
Log.Info("*********************************************************************", (object)this);
}
}
}
我在App_Config\包含
文件夹中添加了以下配置文件:
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
<sitecore>
<pipelines>
<initialize>
<processor type="SCMVC72.Pipelines.DebugStackTrace, SCMVC72"
patch:before="processor[@type='Sitecore.Pipelines.Loader.ShowVersion, Sitecore.Kernel']" />
</initialize>
</pipelines>
</sitecore>
</configuration>
在应用程序重新启动时,这是我在日志中得到的输出:
5764 14:38:08 INFO HttpModule is being initialized
5764 14:38:08 INFO
5764 14:38:08 INFO *********************************************************************
5764 14:38:08 INFO Debug StackTrace
5764 14:38:08 INFO at SCMVC72.Pipelines.DebugStackTrace.Process(PipelineArgs args)
at (Object , Object[] )
at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
at Sitecore.Nexus.Web.HttpModule.Application_Start()
at Sitecore.Nexus.Web.HttpModule.Init(HttpApplication app)
at System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers)
at System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context)
at System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context)
at System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext)
5764 14:38:08 INFO *********************************************************************
这是输出权之前的著名:
5764 14:38:08 INFO
5764 14:38:08 INFO **********************************************************************
5764 14:38:08 INFO **********************************************************************
5764 14:38:08 INFO Sitecore started
5764 14:38:08 INFO Sitecore.NET 7.2 (rev. 140228)
这证实了约翰·韦斯特(HRH JohnWest)在写“这发生在一个模糊的程序集中”(Sitecore)时所说的话。更准确地说,是Nexus。
我已经为JBPM6.1创建了一个Spring mvc项目。每当我创建一个环境时,在DEFAULTBUILDER方法中传递了释放ID,我就会出现以下异常。 ** joinTransaction调用中没有活动的JTA事务 ** 我创建RuntimeManager与环境参考ReleaseId.kJar正确下载,但给出以下错误。当我从类路径中选择资产时,它工作正常。流程实例也运行良好。 ; 但是得到以下异
我有一个JavaFX应用程序,它与用Java编写的控制器类一起使用FXML。在Java控制器中,在FXML节点初始化之前,我需要小心不要对其进行操作(否则我会得到一个NullPointerException),这在运行初始化方法之前是无法保证的。所以我发现自己经常这样做: 控制器在FXML文件中设置如下: 然后是Java文件中的控制器。 这是可行的,但它笨重且重复。我必须创建globalValue
我想在部署初始化成功后运行特定的命令。 这是我的yaml文件: 不过,我希望在成功初始化部署并运行POD之后(而不是之前)运行db迁移命令。 我可以为每个pod手动执行(使用kubectl exec),但这不是很好的扩展性。
此外,我使用tomcat7-maven-plugin运行tomcat。 这是密码。 web.xml
我有我的文件下面: 我也有例子。: 出于某种原因,当我做在我的根目录(不是)我得到错误: 有人能给我解释一下这个错误中的问题吗?这是因为我的依赖项没有正确安装,还是因为其他原因?
问题内容: 加载视图时,我想在其关联的控制器中运行一些初始化代码。 为此,我在视图的主要元素上使用了ng-init指令: 并在控制器中: 第一个问题:这是正确的方法吗? 接下来,事件顺序发生了问题。在视图中,我有一个“保存”按钮,它使用如下指令: 该功能在控制器中定义: 如您所见,它使用在函数中初始化的标志。 问题:该视图被加载的情况下,isClean函数被调用 之前的功能,因此,该标志是。我该怎