diff --git a/dspace-api/src/main/java/org/dspace/content/ItemServiceImpl.java b/dspace-api/src/main/java/org/dspace/content/ItemServiceImpl.java index 10adb1ff5a..af9d63fef6 100644 --- a/dspace-api/src/main/java/org/dspace/content/ItemServiceImpl.java +++ b/dspace-api/src/main/java/org/dspace/content/ItemServiceImpl.java @@ -77,6 +77,8 @@ public class ItemServiceImpl extends DSpaceObjectServiceImpl implements It protected IdentifierService identifierService; @Autowired(required = true) protected VersioningService versioningService; + @Autowired(required=true) + protected HarvestedItemService harvestedItemService; protected ItemServiceImpl() { @@ -583,9 +585,11 @@ public class ItemServiceImpl extends DSpaceObjectServiceImpl implements It authorizeService.authorizeAction(context, item, Constants.DELETE); // Also delete the item if it appears in a harvested collection. - HarvestedItemService harvestedItemService = HarvestServiceFactory.getInstance().getHarvestedItemService(); // autowire this. HarvestedItem hi = harvestedItemService.find(context, item); - harvestedItemService.delete(context,hi); + if(hi!=null) + { + harvestedItemService.delete(context, hi); + } item.getCollections().clear(); item.setOwningCollection(null);