Skip to content

NullReferenceException occurs when trying to accept VersionAddedNotification via PowerShell in Sitecore #1331

@mrvinaykj

Description

@mrvinaykj

Expected Behavior

No exceptions should occur when accepting VersionAddedNotification via PowerShell in Sitecore.

Actual Behavior

NullReferenceException occurs when trying to accept VersionAddedNotification via PowerShell in Sitecore.
It happens for cloned items after creating a new numbered version for its master item.

Steps to Reproduce the Problem

Steps to reproduce:

  1. Create a master item - /sitecore/content/Home/Sample Item
  2. Clone master item - /sitecore/content/Home/Clones/Sample Item
  3. Add a numbered version for the master item
  4. Run the below PS script
$item = (Get-Item -Path "/sitecore/content/Home/Clones/Sample Item" -Language "en")
Write-Host $item.Uri
Write-Host "------------------------------"

$notifications = Get-ItemCloneNotification -Item $item

$notifications | % { Write-Host $_.Type $_.VersionUri}

foreach ($notification in $notifications)
{
if ($notification -ne $null)
{
if ($notification.Type -eq "VersionAddedNotification" `
-and $notification.Type -ne "FirstVersionAddedNotification")
{
Write-Host $notification.ItemUri

Receive-ItemCloneNotification -Notification $notification -Action Accept
}
}
}

Debugging the source code, we detected the exception occurs in VersionAddedNotification.Accept method
when trying to invoke this.SendMessage - see attached pictures

  • 1_VersionAddedNotification.Accept.jpg
    1_VersionAddedNotification Accept
  • 2_VersionAddedNotification.SendMessage.jpg
    2_VersionAddedNotification SendMessage
  • 3_ClientPage.jpg
    3_ClientPage

The reason for the issue is HttpContext.Current is null.

It is reproduced not steadily - after several attempts, it could be successfully accepted.
But, each failed attempt adds a new version for the cloned item.

Metadata

Metadata

Assignees

Labels

area-commandsInvolves functions and cmdlets.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions