ich versuche im ContentCreator von einem Element zu einem anderen Element zu springen.
Zur Veranschaulichung habe ich einen Screenshot angefügt. Zu sehen (aktuell geöffnet) ist das Formular eines Datensatzes aus der Datenquelle "dokument". Nun soll der Kunde die Möglichkeit bekommen, mittels eines FS_BUTTON auf einen anderen Datensatz aus einer anderen Datenquelle zu springen, um diesen zu bearbeiten. Die vier auf dem Screenshot gezeigten Comboboxen enthalten Datensätze aus vier unterschiedlichen Datenquellen. Sobald man auf "Bearbeiten" klickt, lese ich das ausgewählte Element aus und versuche, die Maske zu öffnen.
Das ist mein Code (auf das wesentliche gekürzt, teilweise auch mit Pseudo-Code):
PSEUDO-CODE -> subDataset = leseComboboxUndLiefereDataset();
// subDataset ist das in der Combobox ausgewählte Dataset-Objekt.
if (doTransition && subDataset != null) {
opAgent = context.requireSpecialist(OperationAgent.TYPE);
dataFormOperation = opAgent.getOperation(OpenElementDataFormOperation.TYPE);
dataFormOperation.setOpenEditable(true);
//dataFormOperation.setFormData(subDataset.getFormData());
// Ob mit oder ohne setFormData, die Exception fliegt trotzdem, daher auskommentiert!
dataFormOperation.perform(subDataset);
}
java.lang.NullPointerException
at de.espirit.firstspirit.webedit.server.gadgets.GwtServerGadgetMediatorContext.getPersistencyLanguage(GwtServerGadgetMediatorContext.java:59)
at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.<init>(AggregatingGwtServerGadgetMediator.java:46)
at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.create(AggregatingGwtServerGadgetMediator.java:66)
at de.espirit.firstspirit.webedit.server.gadgets.GwtServerGadgetMediatorFactory.create(GwtServerGadgetMediatorFactory.java:23)
at de.espirit.firstspirit.webedit.server.gadgets.GwtFormControl.<init>(GwtFormControl.java:64)
at de.espirit.firstspirit.webedit.server.forms.FormSessionManager.loadSession(FormSessionManager.java:249)
at de.espirit.firstspirit.webedit.server.operations.WebeditOpenElementDataFormOperation.perform(WebeditOpenElementDataFormOperation.java:102)
at sun.reflect.GeneratedMethodAccessor14945.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:507)
at bsh.Reflect.invokeMethod(Reflect.java:166)
at bsh.Reflect.invokeObjectMethod(Reflect.java:99)
at bsh.Name.invokeMethod(Name.java:858)
at bsh.BSHMethodInvocation.eval(BSHMethodInvocation.java:75)
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.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.BSHTryStatement.eval(BSHTryStatement.java:88)
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)
at de.espirit.firstspirit.client.gui.applications.ApplicationTabRegistry$IdentifiableExecutable.execute(ApplicationTabRegistry.java:114)
at de.espirit.firstspirit.common.ScriptUtil.execute(ScriptUtil.java:106)
at de.espirit.firstspirit.common.ScriptUtil.executePrivileged(ScriptUtil.java:158)
at de.espirit.firstspirit.common.ScriptUtil.execute(ScriptUtil.java:150)
at de.espirit.firstspirit.webedit.server.script.WebeditScriptUtil.execute(WebeditScriptUtil.java:68)
at de.espirit.firstspirit.webedit.server.forms.StoreElementFormServiceImpl.executeScript(StoreElementFormServiceImpl.java:676)
at sun.reflect.GeneratedMethodAccessor13795.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:507)
at de.espirit.firstspirit.webedit.server.control.PollSupportingWebeditService$RPCInvoke.call(PollSupportingWebeditService.java:292)
at de.espirit.firstspirit.webedit.server.control.PollSupportingWebeditService$ServiceCallPollFeedWrapper.call(PollSupportingWebeditService.java:408)
at de.espirit.firstspirit.webedit.server.concurrent.ExecutionManager$NamedCallable.call(ExecutionManager.java:318)
at java.util.concurrent.FutureTask.run(FutureTask.java:267)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1143)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:618)
at java.lang.Thread.run(Thread.java:785)
at de.espirit.common.util.SuspendableThread.run(SuspendableThread.java:55)
Es handelt sich um FirstSpirit 5.2.311.72449.
Der ContentCreator bietet ja auch die Möglichkeit auf Datensätze z.B. aus einer FS_LIST zu springen. Beim Technical Support konnte man mir leider nicht helfen.