Zum Hauptinhalt gehen

UrlCreator im Workflow

Kommentare

6 Kommentare

  • Zendesk API User
    Author: switt - 12/5/2015 7:56

    Hallo Marcel,

    ich vermute es liegt daran, dass der URLCreator kein TemplateSet und keine Sprache hat (es sei denn es fehlt ein bischen Code in deinem Beispiel).

    Den URLCreator würde ich aus dem GenerateTask über den ScheduleContext holen:

    urlCreator = context.getProperty("#urlCreator");

    Gruß,

    Sebastian

    0
  • Zendesk API User
    Author: MarsDD - 12/7/2015 8:29

    Hi Sebastian,

    hierbei komm ich ja genau nicht weiter. Da die Executable in einem Workflow getriggert wird, habe ich ja "nur" den WorkflowScriptContext.

    Anhand des GenerateTask habe ich keine Möglichkeit bis jetzt gefunden, den UrlCreator daraus zu extrahieren.

    Viele Grüße

    Marcel

    0
  • Zendesk API User
    Author: switt - 12/7/2015 11:55

    Hallo Marcel,

    Ich hatte das mit dem Workflow nicht gelesen, sorry. Mein Test im Workflow verlief aber positiv mit folgendem Code.

    // Assume your GenerateTask comes from a ScheduleEntry

    generateTask = context.getUserService().getConnection().getAdminService().getScheduleStorage().getScheduleEntries(context.getProject()).get(0).getTasks().get(0);

    // Get URLCreator

    urlSpecification = generateTask.getUrlCreatorSpecification();

    urlCreator = urlSpecification.createUrlCreator();

    // Obtain necessary values

    ss=context.getUserService().getStore(Type.SITESTORE, true); // true should be necessary at this point

    page=ss.getChildren(PageRef.class, true).getFirst(); // Any Ref

    p=context.getProject();

    l=p.getMasterLanguage();

    ts=p.getTemplateSets().get(0);// 0 is HTML in my case

    // Get URL       

    url = urlCreator.getUrl(page,l, ts, PageParams.SINGLE_PAGE_PARAMS,de.espirit.firstspirit.generate.UrlCreator.ABSOLUTE_URL);

    context.logError(url);

    0
  • Zendesk API User
    Author: MarsDD - 12/7/2015 12:35

    Hallo Sebastian,

    führst du dies als FS-Skript aus? Wenn ja,dann funktioniert dies. Lagere dies, wie oben beschrieben, mal in ein Modul aus - dann sollte die NPE kommen.

    VG Marcel

    0
  • Zendesk API User
    Author: switt - 12/8/2015 11:03

    Hallo Marcel,

    ich habs in der Tat als Beanshell Script getestet, aber es funktioniert auch im Modul (grade nochmal probiert) :smileywink:.

    Evtl. ist deine Modul config falsch. Hier mal die aus meinem Test:

    <?xml version="1.0" encoding="UTF-8"?>

    <module>

        <name>XYZ</name>

        <displayname>XYZ</displayname>

        <version>0.9.1</version>

        <description>A Test</description>

        <vendor>Fancy Name</vendor>

        <scope>public</scope>

        <components>

           <library>

                <name>Utility Core</name>

                <description>Module Core Classes</description>

                <resources>

                    <resource>lib/test-jar-with-dependencies.jar</resource>

                </resources>

            </library>

        </components>

    </module>

    0
  • Zendesk API User
    Author: MarsDD - 12/8/2015 12:36

    Problem gefunden - lag an einem internen Konfikt.

    0

Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.