Hi Alaina, On Fri, Mar 19, 2010 at 4:46 PM, Alaina <[email protected]> wrote:
HI everyone,
I still think the behavior of the groovy script variable doc in a xwiki macro is not as intended. But I am using the following workaround.
Sorry for not looking into this earlier. I'm a bit stuck on some other issues. Will look into this issue and report a JIRA as soon as I get some free time. Thanks for raising the issue :) - Asiri
Put the groovy code in a groovy class stored in a different wiki page (Macros.CiteGroovyClass) . There is documentation here (
http://platform.xwiki.org/xwiki/bin/view/DevGuide/GroovyClassHelloWorldTutor... ) on how to do that. Then the following velocity code in the macro definition will give the correct doc Object to the groovy code.
{{velocity}} #set($groovyObject = $xwiki.parseGroovyFromPage("Macros.CiteGroovyClass")) $groovyObject.setObjects($xwiki, $doc, $context) $groovyObject.process() {{/velocity}}
Thanks for all your help, --Alaina
That is indeed the case for velocity. However if I am using groovy I get different results.
I have the following XWiki Macro groovy-test in Page GroovyTest
{{velocity}} {{/velocity}} {{velocity}} $doc.getAttachmentURL("test.dat") {{/velocity}} {{groovy}} print("{{html}}"); print( doc.getAttachmentURL("test.dat") ); print( xcontext.doc.getAttachmentURL("test.dat",xcontext.getContext()); println("{{/html}}"); {{/groovy}}
if I put {{groovy-test /}} in the body of the page I get the following output
/xwiki/bin/download/Macros/GroovyTest/test.dat /xwiki/bin/download/Macros/GroovyTest/test.dat /xwiki/bin/download/Macros/GroovyTest/test.dat
no surprise. However, If i put the same page body int the page GroovyTestExternal the output is
/xwiki/bin/download/Macros/GroovyTestExternal/test.dat /xwiki/bin/download/Macros/GroovyTest/test.dat /xwiki/bin/download/Macros/GroovyTest/test.dat
thus the difference is with the macro language. What should I use in order to get the expected output (GroovyTestExternal) in groovy?
Thanks so much, --Alaina
_______________________________________________ users mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/users