diff --git a/org.talend.core.repository/src/main/java/org/talend/core/repository/model/AbstractEMFRepositoryFactory.java b/org.talend.core.repository/src/main/java/org/talend/core/repository/model/AbstractEMFRepositoryFactory.java index 8a7d29005e..eb1f7d4452 100644 --- a/org.talend.core.repository/src/main/java/org/talend/core/repository/model/AbstractEMFRepositoryFactory.java +++ b/org.talend.core.repository/src/main/java/org/talend/core/repository/model/AbstractEMFRepositoryFactory.java @@ -937,8 +937,12 @@ public abstract class AbstractEMFRepositoryFactory extends AbstractRepositoryFac @Override public FolderItem getFolderItem(Project project, ERepositoryObjectType itemType, IPath path) { - return getFolderHelper(project.getEmfProject()).getFolder( - ERepositoryObjectType.getFolderName(itemType) + IPath.SEPARATOR + path); + FolderHelper folderHelper = getFolderHelper(project.getEmfProject()); + FolderItem folderItem = folderHelper.getFolder(ERepositoryObjectType.getFolderName(itemType) + IPath.SEPARATOR + path); + if (folderItem == null && itemType != null) { + folderItem= folderHelper.createFolder(ERepositoryObjectType.getFolderName(itemType) + IPath.SEPARATOR + path); + } + return folderItem; } /*