Here is a trick

{{velocity}}
#set($ok = $context.context.put("mydoc", $doc))
{{/velocity}}
{{groovy}}
println xcontext.mydoc
{{/groovy}}

Ludovic

Le 26/10/10 16:57, Arnaud bourree a écrit :
2010/10/26 Arnaud bourree<arnaud.bour...@gmail.com>:
2010/10/26 Anca Luca<lu...@xwiki.com>:

On 10/26/2010 12:28 PM, Marius Dumitru Florea wrote:
Hi Arnaud,

On 10/26/2010 12:38 PM, Arnaud bourree wrote:
Hello,

I develop a macro which display object attached to the current page.
Here summary of my code:
{{goovy}}
def topic = doc.getObject("ActivityReport.TopicClass",
Integer.valueOf(xcontext.macro.params.id))
println "|"+doc.displayPrettyName("topic", title)+"|"+topic.get("title")
println "|"+doc.displayPrettyName("topic", action)+"|"+topic.get("action")
println "|"+doc.displayPrettyName("topic", status)+"|"+topic.get("status")
{{/groovy}}

In my macro page, I put one instance of my TopicClass for development.
That working fine.
In an other page I put an other instance and call my macro.
It display instance from macro page !!!
Indeed. I just tested a wiki macro with this code:

----------8<----------
{{velocity}}
$doc | $xcontext.doc
{{/velocity}}

{{groovy}}
print doc.toString() + " | " + xcontext.doc.toString()
{{/groovy}}
---------->8----------

and the result is:

----------8<----------
Sandbox.FF | Sandbox.WikiMacroTest

Sandbox.WikiMacroTest | Sandbox.WikiMacroTest
---------->8----------

As you can see $doc points to the right document in velocity but to the
wiki macro document in groovy. This looks like a bug to me. Can you
report an issue on http://jira.xwiki.org/jira/browse/XWIKI .
Isn't it this issue: http://jira.xwiki.org/jira/browse/XWIKI-4262 ?

That is not the case as I'm administrator of my wiki and I've all right.
I just upgrade to 2.4.4 and find same issue.
Next step, I upgrade to 2.5 and retry

Sorry Ancra, I read referenced bug to fast, you are true: Thomas
Mortagne said: "Another side effect of this is that it makes
impossible to access current document from groovy or any other
non-velocity script macro."

Regards,

Arnaud.

Arnaud.

Thanks,
Anca

Thanks,
Marius

I suppose that I should not used doc to find current document in macro.
But I don't find in
http://platform.xwiki.org/xwiki/bin/view/DevGuide/WikiMacroTutorial
how to retrieved current document.
I also test xcontext.doc, but it is same as doc.

So how can find current document (the document which call my macro)?

Regards,

Arnaud.
_______________________________________________
users mailing list
users@xwiki.org
http://lists.xwiki.org/mailman/listinfo/users
_______________________________________________
users mailing list
users@xwiki.org
http://lists.xwiki.org/mailman/listinfo/users
_______________________________________________
users mailing list
users@xwiki.org
http://lists.xwiki.org/mailman/listinfo/users

_______________________________________________
users mailing list
users@xwiki.org
http://lists.xwiki.org/mailman/listinfo/users



--
Ludovic Dubost
Blog: http://blog.ludovic.org/
XWiki: http://www.xwiki.com
Skype: ldubost GTalk: ldubost

_______________________________________________
users mailing list
users@xwiki.org
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to