String rootPath = resource.getRootPath();
Iterator entries = cms.getAccessControlEntries(rootPath, false).iterator();
while (entries.hasNext()) {
CmsAccessControlEntry ace = (CmsAccessControlEntry)entries.next();
if (ace.isResponsible()) {
<BUG>I_CmsPrincipal principal = cms.lookupPrincipal(ace.getPrincipal());
if (principal != null) {
responsibles.put(principal, rootPath);
} else {
responsibles.put(ace.getPrincipal(), rootPath);</BUG>
}

String rootPath = resource.getRootPath();
Iterator entries = cms.getAccessControlEntries(rootPath, false).iterator();
while (entries.hasNext()) {
CmsAccessControlEntry ace = (CmsAccessControlEntry)entries.next();
if (ace.isResponsible()) {
try {
responsibles.put(
CmsPrincipal.readPrincipalIncludingHistory(cms, ace.getPrincipal()),
rootPath);
} catch (CmsDbEntryNotFoundException e) {
responsibles.put(ace.getPrincipal(), rootPath);
