Create a custom simple macro

Saurabh Gupta May 8, 2017

Creating a simple macro with no parameters except the one which defines the width of macro in view mode of confluence page.

So my macro is working perfectly except the part where it keeps on loading on insert/edit macro screen -

Capture 2017-05-02 at 0.32.52.png

So here is my piece of code - 

<xhtml-macro name="search-report" class="com.temp.ReportMacro" key="search-report-xhtml">
        <description key="com.temp.macro.desc"/>
        <category name="reporting"/>            
        <parameters>
            <parameter name="width" type="pixel" default="500px"/>
        </parameters>
    </xhtml-macro>

and 

public class ReportMacro implements Macro {

	@Override
	public String execute(Map<String, String> arg0, String arg1, ConversionContext arg2)
			throws MacroExecutionException {

		Map<String, Object> contextMap = MacroUtils.defaultVelocityContext();
		contextMap.put("reportType", "macro");
		return VelocityUtils.getRenderedTemplate("vm/temp-report.vm", contextMap);
	}

	public BodyType getBodyType() {
		return BodyType.NONE;
	}

	public OutputType getOutputType() {
		return OutputType.BLOCK;
	}

}

I don't see any problem with the code, so what am i missing.

1 answer

1 accepted

2 votes
Answer accepted
Saurabh Gupta May 9, 2017

Problem in my code was type="pixel". Wasted 4 hrs on searching other stuff.

AnnWorley
Atlassian Team
Atlassian Team members are employees working across the company in a wide variety of roles.
May 9, 2017

Thanks for getting back to us - it will help the next person.

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events