if(ResourceUtil.filterResourceIdsForGlobalFavorites(PolicyDatabaseFactory.getInstance().getGrantedResourcesOfType(getSessionInfo(request).getUser(),
resource.getResourceType()), resource.getResourceType()).contains(new Integer(resource.getResourceId()))) {
throw new Exception("Cannot remove a user favorite from items that have a policy favorite.");
}
if (sdb.getFavorite(getResourceType().getResourceTypeId(), user, f.getSelectedResource()) == null) {
msgs.add(Globals.ERROR_KEY, new BundleActionMessage("navigation", "removeFromFavorites.error.notFavorite", resource
.getResourceName()));
saveErrors(request, msgs);
return mapping.findForward("refresh");
}
sdb.removeFavorite(getResourceType().getResourceTypeId(), f.getSelectedResource(), user.getPrincipalName());
msgs.add(Globals.MESSAGES_KEY, new BundleActionMessage("navigation", "removeFromFavorites.message.favoriteAdded", resource
.getResourceName()));
saveMessages(request, msgs);
return mapping.findForward("refresh");
}