@Override public synchronized void startup() { ITenant defaultTenant = null; loginAsRepositoryAdmin(); ITenantManager tenantMgr = getTenantManager(); ITenant systemTenant = tenantMgr.createTenant( null, ServerRepositoryPaths.getPentahoRootFolderName(), tenantAdminRoleName, tenantAuthenticatedRoleName, "Anonymous"); if (systemTenant != null) { userRoleDao.createUser( systemTenant, systemTenantAdminUserName, "password", "", new String[] {tenantAdminRoleName, tenantAuthenticatedRoleName}); defaultTenant = tenantMgr.getTenant(JcrTenantUtils.getDefaultTenant().getId()); if (defaultTenant == null) { // We'll create the default tenant here... maybe this isn't the best place. defaultTenant = tenantMgr.createTenant( systemTenant, TenantUtils.TENANTID_SINGLE_TENANT, tenantAdminRoleName, tenantAuthenticatedRoleName, "Anonymous"); userRoleDao.createUser( defaultTenant, singleTenantAdminUserName, "password", "", new String[] {tenantAdminRoleName}); } } }