Questions & Answers

SOLVED
Anonymous
Not applicable

Verzeichnisauswahl via FS_Button im ContentCreator

Jump to solution

Hallo liebe Community,

wir haben derzeit einen Absatz mit einem FS_Button, den wir nutzen um via Report ein Bild darauf fallen zu lassen, damit dieses dann in FirstSpirit gespeichert wird.

So wie im folgenden Thread empfohlen, haben wir ein Auswahldialog via SelectStoreElementOperation implementiert, damit der Nutzer festlegen, wo das Bild gespeichert werden soll.
Re: Dialog beim Speichern von Medien

Im SiteArchitekten funktioniert das einwandfrei. Der Auswahldialog wird angezeigt, man wรคhlt einen Medienordner und anschlieรŸend wird das bild dort abgelegt.

Im ContentCreator ist jedoch das SelectStoreElementOperation-Objekt ein NullPointer.

FolgendermaรŸen sieht derzeit unsere Implementierung aus:

BaseContext context = (BaseContext) params.get("context");

BrokerAgent brokerAgent = context.requireSpecialist(BrokerAgent.TYPE);

OperationAgent operationAgent = context.requireSpecialist(OperationAgent.TYPE);

SelectStoreElementOperation pOperation = operationAgent.getOperation(SelectStoreElementOperation.TYPE); //pOperation is allways null in CC

pOperation ist null, wenn dieser Code via ContentCreator ausgefรผhrt wird.
Vermutlich ist diese Operation unsupportet in dem Context.
(Context: de.espirit.firstspirit.webedit.server.workflow.WebeditScriptContextImpl)

Kennt jemand diesen Anwendungsfall und kennt eine Lรถsung fรผr dieses Problem?

Der Kunde sollte unbedingt auch im ContentCreator in der Lage sein, den Speicherort des Bildes frei zu wรคhlen.

Wir brauchen den Dialog daher unbedingt auch im ContentCreator.

Vielen Dank im Voraus

Liebe GrรผรŸe

Mark

0 Kudos
1 Solution

Accepted Solutions
pavone
I'm new here

Hallo Mark,

ihr kรถnntet auch versuchen FormsAgent (FirstSpirit Developer-API) und ShowFormDialogOperation (FirstSpirit Developer-API) zu verwenden.

Das Formular kรถnnte z. B. einfach eine FS_REFERENCE enthalten.

Ich hoffe das bringt euch weiter.

Viele GrรผรŸe

Tim

View solution in original post

0 Kudos
5 Replies
dluettel
Elite Observer

Hallo Zusammen,

noch als weiteren Hinweis:

FS-Button:

<FS_BUTTON

    name="st_picture_button"

    hFill="yes"

    icon="info"

    noBreak="no"

    onClick="script:bytehall_demo"

    onDrop="script:bytehall_demo"

    style="firstspirit"

    useLanguages="no">

    <DROPTYPES>

      <TYPE value="external"/>

      <MIME type="*/*" classname="java.lang.String"/>

      <MIME type="text/plain" classname="java.io.InputStream"/>

      <MIME type="text/comma-separated-values" classname="java.io.InputStream"/>

    </DROPTYPES>

    <LANGINFOS>

      <LANGINFO lang="*" label="TEXT" description="TEXT"/>

    </LANGINFOS>

    <PARAMS>

      <PARAM name="bytehallId">#field.st_bytehall_id</PARAM>

      <PARAM name="picture">#field.st_picture</PARAM>

    </PARAMS>

  </FS_BUTTON>

Script:

//!Beanshell

import de.espirit.firstspirit.agency.*;

import de.espirit.firstspirit.webedit.server.ClientScriptOperation;

import de.espirit.firstspirit.access.store.mediastore.Media;

import de.espirit.firstspirit.access.store.mediastore.MediaFolder;

import de.espirit.firstspirit.access.store.Store;

import de.espirit.firstspirit.ui.gadgets.aspects.operations.SelectStoreElementOperation;

OperationAgent operationAgent = context.requireSpecialist(OperationAgent.TYPE);

SelectStoreElementOperation pOperation = operationAgent.getOperation(SelectStoreElementOperation.TYPE);

pOperation.setMultiSelect(false);

pOperation.addProject(null).addStoreType(Store.Type.MEDIASTORE);

pOperation.addTypeToSelect(MediaFolder.class);

pOperation.perform();

im Content Creator erhรคlt man die Meldung:

Thu Aug 09 10:45:28 GMT+200 2018 de.espirit.firstspirit.webedit.client.script.ScriptServiceAsyncProxy

SEVERE: [executeScript] failed (in 13 ms)!

de.espirit.firstspirit.webedit.client.util.ServiceFailedException: Es ist ein unerwarteter Fehler aufgetreten.

at de.espirit.firstspirit.webedit.server.script.ScriptServiceImpl.executeScript(ScriptServiceImpl.java:74)

at sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at de.espirit.firstspirit.webedit.server.control.PollSupportingWebeditService$RPCInvoke.call(PollSupportingWebeditService.java:340)

at de.espirit.firstspirit.webedit.server.control.PollSupportingWebeditService$ServiceCallPollFeedWrapper.call(PollSupportingWebeditService.java:462)

at de.espirit.firstspirit.webedit.server.concurrent.ExecutionManager$NamedCallable.call(ExecutionManager.java:318)

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)

0 Kudos

Hallo Daniel,

ich konnte intern zwei Bug-Vorgรคnge finden, die sich mit genau in dem Fahrwasser bewegen das du beschreibst. Die beiden Vorgรคnge sind allerdings bereits gelรถst. Ich denke dass deine Anforderung funktionieren sollte und wรผrde dich daher bitten dich direkt mit einem Bugverdacht an unseren Technical Support zu wenden. Die kรถnnen dir da schneller und gezielter weiterhelfen. Nicht vergessen deine FirstSpirit-Version mit anzugeben Smiley Happy

GrรผรŸe,

Hannes

0 Kudos

Ich habe auch gesehen es gibt bereits diesen Feature-Request hier von Mark selbst: SelectStoreElementOperation auch im ContentCreator

0 Kudos
pavone
I'm new here

Hallo Mark,

ihr kรถnntet auch versuchen FormsAgent (FirstSpirit Developer-API) und ShowFormDialogOperation (FirstSpirit Developer-API) zu verwenden.

Das Formular kรถnnte z. B. einfach eine FS_REFERENCE enthalten.

Ich hoffe das bringt euch weiter.

Viele GrรผรŸe

Tim

0 Kudos
TanjaGroรŸmรผller
Crownpeak employee

Hallo Mark,

benรถtigst Du noch weitere Hilfe oder haben Dir die Antworten von Hannes und Tim bereits geholfen?

In diesem Fall wรคre es super, wenn Du die "richtige Antwort" entsprechend markierst, damit auch andere

Community-Teilnehmer diese auf den ersten Blick finden. Solltest Du zwischenzeitlich eine eigene Lรถsung

gefunden haben, wรคre es nett, wenn Du diese hier bereitstellst.

Viele GrรผรŸe

Tanja

0 Kudos

Type a product name