簡體   English   中英

Atlassian Confluence 藍圖向導 - 不存在的大豆模板

[英]Atlassian Confluence Blueprint wizard - Non existent soy template

我正在構建一個融合插件,包括帶有藍圖的藍圖向導對話框。 但是當我嘗試加載向導時,瀏覽器控制台中出現 JS 錯誤,

未捕獲的錯誤向導指向一個不存在的 Soy 模板,OutputPlugin.Blueprints.Simple.page1Form'。 檢查您的網絡資源或服務器日志。

我嘗試過的是,

  • 檢查服務器日志。 沒有證據。
  • 嘗試清理並重新安裝插件和 SDK。

但是,我已經在atlassian-plugin.xml文件atlassian-plugin.xml大豆添加到網絡資源中。

我跟着atlassian confluence插件教程“ 寫一個中級藍圖插件

我使用的是 Confluence 6.14.0 和 atlasisian SDK 8.16.0

atlassian-plugin.xml

<web-resource key="ma2.create_wizard-resources" name="ma2.create_wizard Web Resources">
        ...
        <transformation extension="soy">
            <transformer key="soyTransformer">
                <functions>com.atlassian.confluence.plugins.soy:soy-core-functions
                </functions>
            </transformer>
        </transformation>

        ...
        <resource type="download" name="outputTemplate.soy.js" location="/soy/outputTemplate.soy" />
</web-resource>

<blueprint key="output-blueprint" content-template-key="output-template" index-key="output-index" i18n-name-key="output.blueprint.name">
        <content-template ref="output-template"/>
        <dialog-wizard key="outputTemplate-wizard">
            <dialog-page id="page1Id"
                         template-key="OutputPlugin.Blueprints.Simple.page1Form"
                         title-key="output.blueprint.wizard.page1.title"
                         description-header-key="test"
                         description-content-key="test1"
                         last="true"/>
        </dialog-wizard>
</blueprint>

outputTemplate.soy

{namespace OutputPlugin.Blueprints.Simple}
/**
* A form that accepts a person's name
*/ 
{template .page1Form}
    <form action="#" method="post" class="aui">
        <fieldset>
            <div class="field-group">
                <label for="contentvar">{getText('output.blueprint.form.label.title.vName')}</label>
                <input id="contentvar" class="text" type="text" name="contentVar">
            </div>
        </fieldset>
    </form>
{/template}

終於找到了解決辦法。 第一個問題是我的服務器控制台沒有記錄必要的日志。 只有 java jdk 和同步日志。 所以我配置了這個Confluence 支持頁面中提到的日志,以包含“com.atlassian.confluence.core”的所有日志。 然后我發現了錯誤

[INFO] [talledLocalContainer] com.atlassian.soy.impl.QuieterSoySyntaxException:在文件 /soy/outputTemplate.soy:SoyDoc 的結尾不在行的結尾 [第 4 行,第 1 列]。

最后,問題是大豆文檔結束后的空格

/**
 * A form that accepts a person's name
 */{space}

代替

/**
 * A form that accepts a person's name
 */

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM