How to read external resources in Velocity

I would like to read {key:value} pairs in Velocity templates (for user macros). These values are placed in an external resource file.

Is this possible?

Thank you,

1 answer

1 accepted

0 votes
Accepted answer

Access to physical files would be a security risk and can't be done directly, Two options:

a) you could do this using a different approach, though a Beanshell (part of bobs Scripting plugin) that could load resources and generate markup. Some scripting/Dev skills required.

b) IIRC you can write a plugin that contributes the necessary resources as part of a plugin, with a Java accessor object written to read the data, that object could then be made available in the velocity context. Dev skills required.

I think b) is the way to go, is there any URL that document this approach?

Thank you.

You'll need to create a plugin with a Velocity Context Module, that bundles the 'helper' you access from Velocity, along with the resources that may be packaged within the plugin or on your local OS if thats what you wanted to do.

- https://developer.atlassian.com/display/CONFDEV/Velocity+Context+Module

Suggest an answer

Log in or Sign up to answer
Community showcase
Posted Oct 24, 2018 in Confluence

Atlassian Research opportunity with Confluence templates

Do you use templates with Confluence? Take part in a remote 1-hr workshop. You'll receive USD $100 for your time!   We're looking for people to participate in a   remote 1-hr workshop...

981 views 14 12
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