zoukankan      html  css  js  c++  java
  • SharePoint2007 管理中心TimerJob”计时器作业定义”页面报错

    SharePoint2007 管理中心TimerJob”计时器作业定义”页面报错

     

    部署完成自己开发的TimerJob,发现“计时器作业定义”页面报错,进不去了,但是TimerJob可以正常运行,这样,肯定不行的,估计还是代码有问题,把这个脆弱的sharepoint页面搞死了。

    如下图,http://URL/_admin/ServiceJobDefinitions.aspx未知错误,最烦人了,而且改了web.config也不抛

    clip_image002

    冷静下来,想了一下,可能有问题的几个点:

    1、配置文件格式问题,删了配置文件,依然报错,而且格式有问题,基本上Timer服务起不来。

    2、读取配置文件有问题,但是程序是控制台调好的,不应该。

    3、本身有问题,这个先不靠谱,因为没改过,不应该。

    4、代码本身有问题。

    所以,查看日志,sharepoint日志和windows应用程序日志

    查看windows应用程序日志,发现:

    clip_image003

    很明显,代码有问题,造成的问题。

    注释掉excute函数里面的所有东西,重新部署TimerJob,居然依然报错;所以,一狠心,把所有我写的代码,都注释掉了,OK了;一部分一部分注释,看看哪部分出问题了。最后,发现

    public static string SubHttpUrl = ConfigurationManager.AppSettings["SubHttpUrl"].ToString();

    public static string WebService = ConfigurationManager.AppSettings["WebService"].ToString();

    这两个变量声明有问题,放到方法里面,不用public static就可以了。如下:

    string SubHttpUrl = ConfigurationManager.AppSettings["SubHttpUrl"].ToString();

    string WebService = ConfigurationManager.AppSettings["WebService"].ToString();

    查看一下:使用 static 修饰符声明属于类型本身而不是属于特定对象的静态成员。static 修饰符可用于类、字段、方法、属性、运算符、事件和构造函数,但不能用于索引器、析构函数或类以外的类型,可能TimerJob不支持这样的声明,造成错误了,不像控制台程序。因为TimerJob调试起来不十分方便,所以基本都是从控制台中调试OK了,才改成TimerJob的,好吧,问题解决了,OK。挺简单的问题,挺简单的思路,记录一下,也给大家多个参考。

    clip_image005

  • 相关阅读:
    The Chinese Postman Problem HIT
    Chinese Postman Problem Aizu
    矩阵游戏 HYSBZ
    最大获利 HYSBZ
    asp.net+MVC--1
    -----IT男生涯————初始篇
    Permutation
    RMQ with Shifts
    Fast Matrix Operations
    "Ray, Pass me the dishes!"
  • 原文地址:https://www.cnblogs.com/TNSSTAR/p/2856410.html
Copyright © 2011-2022 走看看