try {
resourcesManager = (ResourcesManager) this.manager.lookup(ResourcesManager.ROLE);
resourcesManager.copyResources(sourceDocument, destinationDocument);
selector = (ServiceSelector) this.manager.lookup(SiteManager.ROLE + "Selector");
siteManager = (SiteManager) selector.select(publication.getSiteManagerHint());
siteManager.copy(sourceDocument, destinationDocument);
} catch (Exception e) {
throw new PublicationException(e);
} finally {
if (resourcesManager != null) {
this.manager.release(resourcesManager);