public DynamicPage newDynamicPage(String path) { DynamicPage dynamicPage = null; try { // factory create the dynamic page and set id/path dynamicPage = (DynamicPage)createObject(this.dynamicPageClass); if (!path.startsWith(Folder.PATH_SEPARATOR)) { path = Folder.PATH_SEPARATOR + path; } if (!path.endsWith(DynamicPage.DOCUMENT_TYPE)) { path += DynamicPage.DOCUMENT_TYPE; } dynamicPage.setPath(path); // create the default fragment dynamicPage.setRootFragment(newFragment()); } catch (ClassCastException e) { String message = "Failed to create dynamic page object for " + this.dynamicPageClass; log.error(message, e); } return dynamicPage; }