Hallo Phillip,
ich habe das Skript so angepasst:
import de.espirit.firstspirit.access.Language;
import de.espirit.firstspirit.access.schedule.ScheduleContext;
import de.espirit.firstspirit.access.store.Store;
import de.espirit.firstspirit.access.store.mediastore.Media;
import de.espirit.firstspirit.agency.LanguageAgent;
import de.espirit.firstspirit.agency.StoreAgent;
final StoreAgent pSpecialist = context.requestSpecialist(StoreAgent.TYPE);
final LanguageAgent pLanguageAgent = context.requestSpecialist(LanguageAgent.TYPE);
final Store pMediaStore = pSpecialist.getStore(Store.Type.MEDIASTORE, true);
final Language pMasterLanguage = pLanguageAgent.getMasterLanguage();
for (Media _media : pMediaStore.getChildren(Media.class, true)){
context.logInfo(_media.getFilename() + " : " + _media.getUid());
// Meda Form Data
if (!_media.getParent().hasMeta())
continue;
if(_media.getParent().isFolder()){
context.logInfo("Berechtigung: " +_media.getParent().getMetaFormData().get(pMasterLanguage, "md_groups").get().getAllowed("access").toString(";"));
context.logInfo("URL : " +_media.getParent().getStoredUrl(pMasterLanguage ));
}
}
Bekomme aber auf der fett markierten Zeile folgende Fehlermeldung
Vorher kommt das und kann man das irgendwie abfangen?
Die Metadaten sind Bereichtigungen in denen steht welche Gruppen diese Datei lesen kann.
Der Datei selbst hat aber keine Metadaten sondern der Ordner in der die Datei drin steckt.
Habe ich da ein Denkfehler?
INFO 23.01.2018 13:30:50.578 (de.espirit.firstspirit.store.access.AccessStoreBuilder): TEMPLATESTORE(false) loaded in 0ms
ERROR 23.01.2018 13:30:50.594{dNR=} (de.espirit.firstspirit.server.scheduler.ScriptTaskExecutor): error during script execution : de.espirit.firstspirit.access.script.ExecutionException: Error in method invocation: Method toString(java.lang.String) not found in class'java.util.TreeSet' : at Line: 20 : in file: inline evaluation of: ``__execute() { import de.espirit.firstspirit.access.Language; import de.espirit.f . . . '' : .toString ( ";" )
at line 20
de.espirit.firstspirit.access.script.ExecutionException: Error in method invocation: Method toString(java.lang.String) not found in class'java.util.TreeSet' : at Line: 20 : in file: inline evaluation of: ``__execute() { import de.espirit.firstspirit.access.Language; import de.espirit.f . . . '' : .toString ( ";" )
at line 20
at de.espirit.firstspirit.server.script.BeanshellScriptEngine$BeanshellExecutable.execute(BeanshellScriptEngine.java:111)
at de.espirit.firstspirit.common.ScriptUtil.execute(ScriptUtil.java:106)
at de.espirit.firstspirit.server.scheduler.ScriptTaskExecutor.run(ScriptTaskExecutor.java:134)
at de.espirit.firstspirit.server.scheduler.ScheduleManagerImpl$TaskCallable.executeLocal(ScheduleManagerImpl.java:2475)
at de.espirit.firstspirit.server.scheduler.ScheduleManagerImpl$TaskCallable.executeLocal(ScheduleManagerImpl.java:2458)
at de.espirit.firstspirit.server.scheduler.ScheduleManagerImpl$TaskCallable.call(ScheduleManagerImpl.java:2390)
at de.espirit.firstspirit.server.ExecutionManagerImpl$ExtendedCallable.call(ExecutionManagerImpl.java:590)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at de.espirit.common.util.BoundedExecutorService$RunnableWrapper.run(BoundedExecutorService.java:436)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
at de.espirit.common.util.SuspendableThread.run(SuspendableThread.java:56)
Caused by: bsh.EvalError: Error in method invocation: Method toString(java.lang.String) not found in class'java.util.TreeSet' : at Line: 20 : in file: inline evaluation of: ``__execute() { import de.espirit.firstspirit.access.Language; import de.espirit.f . . . '' : .toString ( ";" )
at bsh.BSHPrimarySuffix.doName(BSHPrimarySuffix.java:179)
at bsh.BSHPrimarySuffix.doSuffix(BSHPrimarySuffix.java:120)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:80)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at bsh.BSHBinaryExpression.eval(BSHBinaryExpression.java:123)
at bsh.BSHArguments.getArguments(BSHArguments.java:65)
at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:69)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:102)
at bsh.BSHPrimaryExpression.eval(BSHPrimaryExpression.java:47)
at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at bsh.BSHBlock.eval(BSHBlock.java:80)
at bsh.BSHBlock.eval(BSHBlock.java:46)
at bsh.BSHIfStatement.eval(BSHIfStatement.java:48)
at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at bsh.BSHBlock.eval(BSHBlock.java:80)
at bsh.BSHBlock.eval(BSHBlock.java:46)
at bsh.BSHEnhancedForStatement.eval(BSHEnhancedForStatement.java:80)
at bsh.BSHBlock.evalBlock(BSHBlock.java:130)
at bsh.BSHBlock.eval(BSHBlock.java:80)
at bsh.BshMethod.invokeImpl(BshMethod.java:371)
at bsh.BshMethod.invoke(BshMethod.java:267)
at bsh.BshMethod.invoke(BshMethod.java:170)
at bsh.PreparsedScript.invoke(PreparsedScript.java:66)
at de.espirit.firstspirit.server.script.BeanshellScriptEngine$BeanshellExecutable.execute(BeanshellScriptEngine.java:100)
... 14 more
Caused by: bsh.ReflectError: Method toString(java.lang.String) not found in class'java.util.TreeSet'
at bsh.Reflect.resolveExpectedJavaMethod(Reflect.java:395)
at bsh.Reflect.invokeObjectMethod(Reflect.java:97)
at bsh.BSHPrimarySuffix.doName(BSHPrimarySuffix.java:176)
... 37 more