title: 'Activate feature' step error :Object Reference not set to an instance of an object
body: <p>I created a custom timer job and implemented it through a feature event in sharepoint.</p>
  
  <p>when i tried to activate it, its showing this particular error:</p>
  
  <pre><code>Object reference not set to an instance of an object.   at TimerJobExample.MyFeatureReceiver.FeatureActivated(SPFeatureReceiverProperties properties) in C:\Documents and Settings\admin-shuklag.INFRADEV\My Documents\Visual Studio 2008\Projects\TimerJobExample\TimerJobExample\MyFeatureReceiver.cs:line 22 
     at Microsoft.SharePoint.SPFeature.DoActivationCallout(Boolean fActivate, Boolean fForce) 
     at Microsoft.SharePoint.SPFeature.Activate(SPSite siteParent, SPWeb webParent, SPFeaturePropertyCollection props, Boolean fForce) 
     at Microsoft.SharePoint.SPFeatureCollection.AddInternal(Guid featureId, SPFeaturePropertyCollection properties, Boolean force, Boolean fMarkOnly) 
     at Microsoft.SharePoint.SPFeatureCollection.Add(Guid featureId) 
     at Microsoft.SharePoint.WebControls.FeatureActivator.BtnActivateFeature_Click(Object objSender, EventArgs evtargs) 
     at System.Web.UI.WebControls.Button.OnClick(EventArgs e) 
     at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) 
     at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) 
     at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) 
     at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) 
     at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) 
  </code></pre>
  
  <p>The error line is highlighted below</p>
  
  <pre><code>public override void FeatureActivated(SPFeatureReceiverProperties properties)
      {
  
          SPSite site = properties.Feature.Parent as SPSite;
  
          // make sure the job isn't already registered
  
  
  //error line
        **foreach (SPJobDefinition job in site.WebApplication.JobDefinitions)**
  
          {
  
              if (job.Name == List_JOB_NAME)
  
                  job.Delete();
  
          }
  
  
  
          SampleTimer listLoggerJob = new SampleTimer(List_JOB_NAME, site.WebApplication);
  
          SPMinuteSchedule schedule = new SPMinuteSchedule();
  
          schedule.BeginSecond = 0;
  
          schedule.EndSecond = 59;
  
          schedule.Interval = 5;
  
          listLoggerJob.Schedule = schedule;
  
          listLoggerJob.Update();
  
      }
  </code></pre>
  
  <p>what could be the problem?</p>