Projektimport über Script
Author: lmeric
Publication Date: 10/8/2012 13:31
Hallo!
Ich versuche über ein Modul (Aufruf einer executable) ein vorhandenes Projekt auf dem Server als Vorlage zu verwenden, um damit ein neues Projekt zu importieren.
Soweit funktioniert dies auch, jedoch fehlen dem Projekt jegliche Inhalte (Vorlagen, Seiten usw).
Anscheinend mache ich beim Layer-Setzen Fehler.
Das alte Projekt hat den Layer "derby_project9974_0". Das neue Projekt soll ein Neues nutzen.
Hier der Code:
ProjectInfo projectInfo = projectStorage.getProjectInfo(exportFileProjectTemplate);
Map<String,String> layerMapping = new HashMap<String, String>();
layerMapping.put("derby_project9974_0", null);
ImportParameters importParameters = new ImportParameters(exportFileProjectTemplate, projectInfo, "New project", "TestImport of a new project", layerMapping, null);
Der Fehler liegt wohl an der Map layerMapping. Laut API ist der Key der alte Layername und Value der neue.
Ausser null habe ich schon "" und einen erfundenen Namen ausprobiert.
Ich stelle mir auch die Frage, ob eine Layerangabe überhaupt nötig ist.
Wenn ich den Vorgang händisch durchführe klappt alles.
Dank und Gruß
Levent Meric
FS: 5.0.105.53390
-
Author: lmeric - 10/10/2012 14:01
Hallo Donato,
besten Dank! Das war es. Zusätzlich kann man noch den gleichen Layer setzen:
Map<String, String> layerMapping = new HashMap<String, String>();
List<Properties> usedLayers = projectInfo.getUsedLayers();
for (Properties properties : usedLayers) {
String layername = (String) properties.getProperty("name");
layerMapping.put(layername, null);
}
ImportParameters importParameters = new ImportParameters(exportFileProjectTemplate, projectInfo, PROJECTNAME, "TestImport of a new project", layerMapping, new HashMap<Long,Long>());
Gruß
Levent
P.S. getestet auf FS5
0
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.
Kommentare
1 Kommentar