@Override public @Nonnull CreateProjectValidationResult validateCreateProject(ApplicationUser user, @Nonnull ProjectCreationData projectCreationData) { final JiraServiceContext serviceContext = getServiceContext(user, ErrorCollections.empty()); final I18nHelper i18nBean = getI18nBean(user); if (!globalPermissionManager.hasPermission(GlobalPermissionKey.ADMINISTER, user)) { serviceContext.getErrorCollection().addErrorMessage(i18nBean.getText("admin.projects.service.error.no.admin.permission"), Reason.FORBIDDEN); return new CreateProjectValidationResult(serviceContext.getErrorCollection()); } ProjectCreationData overridenProjectCreationData = overrideProjectTypeUsingTypeFromProjectTemplate(projectCreationData); isValidAllProjectData(serviceContext, overridenProjectCreationData); if (serviceContext.getErrorCollection().hasAnyErrors()) { return new CreateProjectValidationResult(serviceContext.getErrorCollection()); } return new CreateProjectValidationResult(serviceContext.getErrorCollection(), user, overridenProjectCreationData); }