Hello everybody,
I am struggling, getting a custom ContextProvider working in a web panel, we try to include in the Jira user profile page. The method getContextMap gets called, but the ApplicationUser and the JiraHelper are null, whatever I do.
Here the configuration from the plugin descriptor:
<web-panel key="custom-profile-panel" location="webpanels.user.profile.summary.custom" weight="150">
<context-provider class="de.syracom.jira.plugins.UserProfileProvider" />
<resource name="view" type="velocity" location="template/userprofile.vm"></resource>
</web-panel>
And the implementation of the ContextProvider
@Scanned
public class UserProfileProvider extends AbstractJiraContextProvider {
@ComponentImport
private final UserManager userManager;
private final UserConfigRepository userConfigRepository;
private final PluginConfigRepository pluginConfigRepository;
public UserProfileProvider(UserManager userManager, @ComponentImport ActiveObjects activeObjects, @ComponentImport TransactionTemplate transactionTemplate) {
this.userManager = userManager;
this.userConfigRepository = new UserConfigRepository(activeObjects, transactionTemplate);
this.pluginConfigRepository = new PluginConfigRepository(activeObjects, transactionTemplate);
}
@Override
public Map getContextMap(ApplicationUser applicationUser, JiraHelper jiraHelper) {
Map contextMap = new HashMap();
HttpServletRequest request = jiraHelper.getRequest();
String pathInfo = request.getPathInfo();
UserProfile userProfile = this.userManager.getUserProfile(applicationUser.getName());
return contextMap;
}
}
We are using the Atlassian SDK 6.2.14 with AMPS 6.2.11, Spring Scanner 1.x and Jira 7.2.2.
Any ideas, why this is not working?
Regards,
Alexander