SharePoint工作流开发点滴(5) – "启动时失败"的查错方法

很多朋友在使用Visual Studio开发工作流时都遇到过工作流”启动时失败”的错误,我把我遇到这种情况时的查错方法和大家分享一下,希望对大家有所帮助,也希望大家可以告诉我更好的方法.

首先在OnWorkflowActivated方法中设置断点来调试,检查断点是否可以成功暂停,如果可以,则可以再检查一下OnWorkflowActivated中的逻辑代码.

如果断点处不停止就出现了”启动时失败”的错误,也就是说错误发生在工作流激活之前,这种情况就可以排除代码的错误,检查infopath表单和workflow.xml即可.

infopath表单的配置较为麻烦,甚至连命名都是有规则的,需要多加注意.

另外,如果工作流包含关联表单(Association),那么初始化表单(Instantiation)中必须包含关联表单中定义的域.

如果还是找不出错误的来源,那么,记住工作流启动时的时间,检查SharePoint日志吧.日志的目录是:$:\Program Files\Common Files\Microsoft Shared\web server extensions\12\LOGS

最后再引用一句Kaneboy的签名:

“玩SharePoint就像是魔术,你不知道它为什么工作,也不知道它为什么不工作.”

9 Comments

  1. sinmen

    很急啊,我想请教下,怎么启动调试,我在VS中调试,总提升不能启动程序

  2. 贝贝

    请问在SHAREPOINT中看不到自己部署的工作流,能指点一下吗.
    整个部署都成功了.只有强签名那我注释掉了.因为我机器没有安装.NET的 SDK
    但是其他的环境都没有问��了.能指点一下吗.谢谢拉

  3. ddd

    发现了两个很好的技术讨论MSN群!

    赏梅斋-MOSS配置与管理 group102250@msnzone.cn
     专注于MOSS配置与管理的技术问题!

    赏梅斋-MOSS开发 group194869@xiaoi.com
    MOSS技术最牛的人都在这里了!(突破350人!)已加入了微软解决方案技术专家(MOSS)、微软销售经理、微软咨询顾问、包括台湾在内的众多地区的MVP,以及微软R&D做MOSS相关开发的Program Manager等。
    heehe

  4. 我在工作流启动时出现了 工作流内部错误

    请问:
    初始表单和关联表单可以是同一表单么?

    我把关联表单 生成了 类文件

    而初始表单没有生成类文件

    我这样做的时候,在手动启动工作���时,出现了表单已经关闭,而不是我所指定 的初始表单,请问可能是什么原因呢?

  5. @流浪
    请注意我在文章中的这一句话:
    “另外,如果工作流包含关联表单(Association),那么初始化表单(Instantiation)中必须包含关联表单中定义的域.”
    也就是说,关联表单中所有的域都必须在初始化表单中出现,那么当然可以是同一张表单了。
    表单关闭的问题你也可以查找log。

发表评论

电子邮件地址不会被公开。 必填项已用*标注