Spaceblueprint works in SDK but not in Production Confluence

Hi everyone,

I´ve developed a Spaceblueprint and everything works great in the SDK. But when importing the .jar or the .obr into our production Confluence I get the following error inside of the firefox console:
"Error: wizard points to a non-existent Soy template 'itcs.confluence.customerbp.page1Form'. Check your web-resources or server logs."
The strange thing is that everything works fine in the SDK so I don´t know what to change to make it work in the production Confluence.

I really apreciate any help!

Thank you
Irakli Edjibia

1 answer

This other customer on Community eleminated that error by escaping quotes: 

 
 
 

 

Hello Ann,

sadly this didn't solve my problem.

I will post my atlassian-plugin.xml, js file and soy template here hoping you or someone else finds the mistake in my code.

I am using this atlas-clis version:

ATLAS Version:    6.2.14
ATLAS Home:       /usr/share/atlassian-plugin-sdk-6.2.14
ATLAS Scripts:    /usr/share/atlassian-plugin-sdk-6.2.14/bin
ATLAS Maven Home: /usr/share/atlassian-plugin-sdk-6.2.14/apache-maven-3.2.1
AMPS Version:     6.2.11

And this confluence version:

 Atlassian Confluence 6.2.3

 

So here comes my js file, I've replaced all the escaped quotes:

AJS.bind("blueprint.wizard-register.ready", function () {
function submitExampleSpace(e, state) {
state.pageData.ContentPageTitle = state.pageData.name + " " + AJS.I18n.getText("itcs.confluence.customerbps.frontend.wizard.js.title");
return Confluence.SpaceBlueprint.CommonWizardBindings.submit(e, state);
}
function preRenderExampleSpace(e, state) {
state.soyRenderContext["atlToken"] = AJS.Meta.get("atl-token");
state.soyRenderContext["showSpacePermission"] = false;
}
Confluence.Blueprint.setWizard("com.itcs.confluence.customerbp.customerbp:itcs-confluence-customerbp-item", function(wizard) {
wizard.on("submit.wizardPage1", submitExampleSpace);
wizard.on("pre-render.wizardPage1", preRenderExampleSpace);
wizard.on("post-render.wizardPage1", Confluence.SpaceBlueprint.CommonWizardBindings.postRender);
});
});

 

 This is my soy template:

{namespace itcs.confluence.customerbp}
/**
 * Dialog form template
 *
 * @param atlToken the XSRF token to send with the form
 * @param? fieldErrors the map of errors to display keyed by field name
 * @param? name initial value for the name field
 * @param? key initial value for the key field
 */
{template .page1Form}
<form action="#" method="post" id="wizardPage1" class="common-space-form aui">
    {call Confluence.Templates.Blueprints.CreateSpace.createSpaceFormFields}
        {param showSpacePermission: false /}
        {param fieldErrors: $fieldErrors /}
        {param name: $name /}
        {param key: $key /}
    {/call}
    <fieldset>
        <div class="field-group">
            <label for="vcusname">{getText('itcs.confluence.customerbp.frontend.wizard.soy.vcusname')}</label>
            <input id="vcusname" class="text long-field" type="text" name="vCusName"/>
        </div>
    </fieldset>
    <fieldset class="field-group">
        <label>{getText('itcs.confluence.customerbp.frontend.wizard.soy.sellang')}</label>
        <div class="radio">
            <input class="radio" type="radio" checked="checked"
                name="radiobuttons" id="radioButtonOne">
            <label for="radioButtonOne">{getText('itcs.confluence.customerbp.frontend.wizard.soy.vlang1')}</label>
        </div>
        <div class="radio">
            <input class="radio" type="radio"
            name="radiobuttons" id="radioButtonTwo">
            <label for="radioButtonTwo">{getText('itcs.confluence.customerbp.frontend.wizard.soy.vlang2')}</label>
        </div>
    </fieldset>

    <input type="hidden" name="noPageTitlePrefix" value="true"/>
    <input type="hidden" name="atl_token" value="{$atlToken}" />
</form>
{/template}
         

 

And the Important Parts of my atlassian-plugin.xml:

<atlassian-plugin key="${atlassian.plugin.key}" name="${project.name}" plugins-version="2">
    <plugin-info>
        <description>${project.description}</description>
        <version>${project.version}</version>
        <vendor name="${project.organization.name}" url="${project.organization.url}" />
        <param name="plugin-icon">images/pluginIcon.png</param>
        <param name="plugin-logo">images/pluginLogo.png</param>
    </plugin-info>

<!-- add our i18n resource -->
    <resource type="i18n" name="i18n" location="customerbp"/>

<!-- __Space BP: -->
    <web-item key='itcs-confluence-customerbp-item' i18n-name-key="itcs.confluence.customerbp.name"
        section='system.create.space.dialog/content'>
        <description key='itcs.confluence.customerbp.desc'/>
        <param name='blueprintKey' value='itcs-confluence-customerbp'/>
    </web-item>

    <space-blueprint key="itcs-confluence-customerbp" i18n-name-key="itcs.confluence.customerbp.name"
        category="customer">
        <space-creation-steps>
            <space-creation-step ref="com.atlassian.confluence.plugins.confluence-create-content-plugin:restrictedUserSpaceCreationStep"/>
            <space-creation-step ref="com.atlassian.confluence.plugins.confluence-create-content-plugin:watchSpaceCreationStep"/>
        </space-creation-steps>
        <dialog-wizard key="itcs-confluence-customerbp">
            <dialog-page id="wizardPage1"
                template-key="itcs.confluence.customerbp.page1Form"
                title-key="itcs.confluence.customerbp.dialog.create.title"
                description-header-key="itcs.confluence.customerbp.dialog.create.heading"
                description-content-key="itcs.confluence.customerbp.dialog.create.description"
                last="true"/>
        </dialog-wizard>
        <default-blueprint-item ref="itcs-confluence-customerbp"/>

    </space-blueprint>
    <!-- add our web resources -->
    <web-resource key="itcs-confluence-customerbp-wizard" name="customerbp Web Resources">
        <dependency>com.atlassian.auiplugin:ajs</dependency>
        <dependency>com.atlassian.confluence.plugins.confluence-create-content-plugin:resources</dependency>

        <transformation extension="soy">
            <transformer key="soyTransformer">
                <functions>com.atlassian.confluence.plugins.soy:soy-core-functions</functions>
            </transformer>
        </transformation>
        <transformation extension="js">
            <transformer key="jsI18n"/>
        </transformation>

        <resource type="download" name="itcs-confluence-dialog-page.js" location="/soy/dialog-page.soy"/>
        <resource type="download" name="customerbp.css" location="/css/customerbp.css"/>
        <resource type="download" name="itcs-confluence-customerbp.js" location="/js/customerbp.js"/>
        <resource type="download" name="images/" location="/images"/>
         <dependency>com.atlassian.confluence.plugins.confluence-create-content-plugin:space-blueprints</dependency>   <!-- This dependency is not required for confluence 5.4+ -->
        <dependency>com.atlassian.confluence.plugins.confluence-create-content-plugin:resources</dependency>
        <dependency>com.atlassian.confluence.plugins.confluence-space-ia:spacesidebar</dependency>

       <context>atl.general</context>
        <context>atl.admin</context>
        <context>customerbp</context>
    </web-resource>
</atlassian-plugin>


 

Thank you for your help!

Irakli Edjibia

 

Suggest an answer

Log in or Sign up to answer
Atlassian Community Anniversary

Happy Anniversary, Atlassian Community!

This community is celebrating its one-year anniversary and Atlassian co-founder Mike Cannon-Brookes has all the feels.

Read more
Community showcase
Kesha Thillainayagam
Posted Friday in Confluence

We want to hear how your non-technical teams are using Confluence!

Hi Community! Kesha (kay-sha) from the Confluence marketing team here! Can you share stories with us on how your non-technical (think Marketing, Sales, HR, legal, etc.) teams are using Confluen...

277 views 11 10
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you