Use UserUtils in a velocity template

Hello,

I'm trying to retrieve the full name of some users from their username. I think the UserUtil interface can do that but I couldn't find how to make it works in my vm file.

My velocity template:

#set($name = $userutil.getUserByName("bla").getDisplayName())
...
$name

Problem: "$name" is displayed but not replaced by the full name.

My atlassian-plugin.xml:

<component-import key="userutil" 
        interface="com.atlassian.jira.user.util.UserUtil" />

JIRA version: v6.3.3

Thanks for your time and your help.

2 answers

1 accepted

using $userutil assumes that you've got getUserUtil in your webwork action which renders the velocity template.

So you can either expose UserUtil through a getter in the java code or create a method that calls UserUtil and returns the display name:

something like getDisplayName(String user) { return UserUtil.getUserByName(user).getDisplayName()}

and then call it in velocity:

$displayName("bla")

Thanks for your answer,

I didn't do exactly what you wrote but that helped me to understand the existing code I'm working on. I add the method getDisplayName to the utilities class and then, I put an instance of this class in the context map so that I can use it in the velocity template.

Here's my code for people having the same issue:

Utility class:

import com.atlassian.jira.user.UserUtils;
...
 public String getDisplayName(String username) {
        return UserUtils.getUser(username).getDisplayName();
    }
...

Java class of the plugin:

Utilities utils = new Utilities();
...
contextMap.add("utils", utils);

Velocity template:

$utils.getDisplayName("some username")

Now, it works!

Suggest an answer

Log in or Sign up to answer
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Published Monday in Jira Software

How large do you think Jira Software can grow?

Hi Atlassian Community! My name is Shana, and I’m on the Jira Software team. One of the many reasons this Community exists is to connect you to others on similar product journeys or with comparabl...

633 views 6 12
Read article

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