larsquitsch
Returning Observer

Executable im SA aber nicht als Auftrag

Hallo zusammen,

ich habe hier ein Problem, dass ich nicht nachvollziehen kann. Ich habe ein Import-Script geschrieben, dass ich problemlos im Sitearchiteken starten kann und dann ohne Probleme durchläuft.

Wenn den gleichen Aufruf der Executable aber in einen Auftrag verpacke und starten bekomme ich einen IOError wegen einer classmapping.ini

Es handelt sich um ein Cloud Projekt. Für die Connection wird eine eigenen Verbindung aufgebaut.

INFO  06.10.2021 09:23:17.279 (de.espirit.firstspirit.server.scheduler.ScheduleManagerImpl): starting task 'Import' - schedule entry 'Full Pim Import' (id=111969)

ERROR 06.10.2021 09:23:18.421{dNR=} (de.espirit.firstspirit.server.scheduler.ScriptTaskExecutor): error during script execution : de.espirit.firstspirit.common.IOError: de.espirit.firstspirit.common.IOError: cannot load resource de/espirit/firstspirit/server/classmapping.ini

de.espirit.firstspirit.common.IOError: de.espirit.firstspirit.common.IOError: cannot load resource de/espirit/firstspirit/server/classmapping.ini

at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)

at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)

at java.base/java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:600)

at java.base/java.util.concurrent.ForkJoinTask.reportException(ForkJoinTask.java:678)

at java.base/java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:737)

at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateParallel(ReduceOps.java:919)

at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)

at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:578)

at com.logicjoe.fs.warema.pim.FullPimImportExecutable.addExistingDatasetsToCache(FullPimImportExecutable.java:1491)

at com.logicjoe.fs.warema.pim.FullPimImportExecutable.execute(FullPimImportExecutable.java:97)

at de.espirit.ps.warema.mam.access.AbstractExecutable.execute(AbstractExecutable.java:20)

at de.espirit.firstspirit.server.script.ClassCallerEngine$ContextLoaderExecutable.execute(ClassCallerEngine.java:110)

at de.espirit.firstspirit.server.script.PermissionsScriptEngine$PermissionsExecutable.lambda$execute$1(PermissionsScriptEngine.java:83)

at java.base/java.security.AccessController.doPrivileged(Native Method)

at de.espirit.firstspirit.server.script.PermissionsScriptEngine$PermissionsExecutable.execute(PermissionsScriptEngine.java:88)

at de.espirit.firstspirit.server.script.PermissionsScriptEngine$PermissionsExecutable.execute(PermissionsScriptEngine.java:83)

at de.espirit.firstspirit.common.ScriptUtil.execute(ScriptUtil.java:109)

at de.espirit.firstspirit.server.scheduler.ScriptTaskExecutor.run(ScriptTaskExecutor.java:162)

at de.espirit.firstspirit.server.scheduler.ScheduleManagerImpl$TaskCallable.executeLocal(ScheduleManagerImpl.java:2611)

at de.espirit.firstspirit.server.scheduler.ScheduleManagerImpl$TaskCallable.executeLocal(ScheduleManagerImpl.java:2594)

at de.espirit.firstspirit.server.scheduler.ScheduleManagerImpl$TaskCallable.call(ScheduleManagerImpl.java:2525)

at de.espirit.firstspirit.server.ExecutionManagerImpl$ExtendedCallable.call(ExecutionManagerImpl.java:629)

at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)

at de.espirit.common.util.BoundedExecutorService$RunnableWrapper.run(BoundedExecutorService.java:491)

at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)

at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)

at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)

at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)

at java.base/java.lang.Thread.run(Thread.java:834)

at de.espirit.common.util.SuspendableThread.run(SuspendableThread.java:58)

Caused by: de.espirit.firstspirit.common.IOError: cannot load resource de/espirit/firstspirit/server/classmapping.ini

at de.espirit.firstspirit.server.ServerManagerImpl.getClassMapping(ServerManagerImpl.java:1952)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.base/java.lang.reflect.Method.invoke(Method.java:566)

at de.espirit.firstspirit.server.io.CallContextManagerProvider$ManagerInvoker.invoke(CallContextManagerProvider.java:93)

at com.sun.proxy.$Proxy37.getClassMapping(Unknown Source)

at de.espirit.firstspirit.server.io.AbstractServerConnection.getClassMapper(AbstractServerConnection.java:822)

at de.espirit.firstspirit.store.access.templatestore.TableTemplateImpl.getMappingClassLoader(TableTemplateImpl.java:382)

at de.espirit.firstspirit.store.access.templatestore.TableTemplateImpl.loadMappings(TableTemplateImpl.java:369)

at de.espirit.firstspirit.store.access.templatestore.TableTemplateImpl.getMappings(TableTemplateImpl.java:160)

at de.espirit.firstspirit.store.access.templatestore.TableTemplateImpl.getMappings(TableTemplateImpl.java:142)

at de.espirit.firstspirit.store.access.templatestore.TableTemplateImpl.getMappings(TableTemplateImpl.java:135)

at de.espirit.firstspirit.store.access.contentstore.ContentUtil.getMapping(ContentUtil.java:249)

at de.espirit.firstspirit.store.access.contentstore.ContentUtil$3.getMapping(ContentUtil.java:221)

at de.espirit.firstspirit.store.access.contentstore.ContentUtil$3.get(ContentUtil.java:174)

at de.espirit.firstspirit.store.access.DataWrappingFormData.get(DataWrappingFormData.java:91)

at de.espirit.firstspirit.client.access.editor.FormDataImpl.get(FormDataImpl.java:161)

at de.espirit.firstspirit.access.store.contentstore.gom.list.EntityFormData.get(EntityFormData.java:153)

at com.logicjoe.fs.warema.pim.FullPimImportExecutable.lambda$addExistingDatasetsToCache$27(FullPimImportExecutable.java:1490)

at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:176)

at java.base/java.util.AbstractList$RandomAccessSpliterator.forEachRemaining(AbstractList.java:720)

at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484)

at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)

at java.base/java.util.stream.ReduceOps$ReduceTask.doLeaf(ReduceOps.java:952)

at java.base/java.util.stream.ReduceOps$ReduceTask.doLeaf(ReduceOps.java:926)

at java.base/java.util.stream.AbstractTask.compute(AbstractTask.java:327)

at java.base/java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:746)

at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)

at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)

at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)

at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)

at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

Vielen Danke und viele Grüße,

Lars

0 Kudos
2 Replies
udg_wachtel
Occasional Observer

Hallo Lars,

ich habe leider keine Lösung für dein Problem, hört sich aber so an als müsstes du das Modul so bauen dass es auch mit dem IsolatedMode klar kommt: Leitfaden Isolated Mode - Isolated vs. Classic

Hoffe das hilft etwas weiter.

Viele Grüße

Steffen

0 Kudos

Hi Steffen, 

hab das Problem gefunden, man sollte nicht multithreaded (parallelStream) arbeiten, dann gehts auch im Auftrag. 😉

0 Kudos