Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Is additionalBuildConfigurationPlugin module still functional with spring scanner ?

Julius Hutuleac August 13, 2017

Hi,

I have been trying to migrate to the new spring scanner, all modules of my plugins worked fine just additionalBuildConfigurationPlugin keeps failing - initially templateRenderer was null, now after adding inject for a templateRenderer:

@Inject
private PlanManager planManager;
@Inject
private PluginLicenseManager licenseManager;
@Inject
private TemplateRenderer templateRenderer;

I get something new, still no progress:

java.lang.NullPointerException
[talledLocalContainer] at com.atlassian.bamboo.v2.build.BaseBuildConfigurationAwarePlugin.getEditHtml(BaseBuildConfigurationAwarePlugin.java:84)

Can someone give a hint ?

Thank you,

Julius

 

2 answers

1 accepted

0 votes
Answer accepted
Julius Hutuleac August 15, 2017

In the end had to copy a piece of code from bamboo itself, getedit and getviewhtml, unfortunatelly the component-import in xml is not working (when using the scanner)  and without spring annotations templateRenderer is no longer available for those methods to work.

1 vote
Oleg Efimov April 22, 2018

@Julius Hutuleacfor unknown reason some components (listeners, additionalBuildConfigurationPlugins) aren't scanned for dependencies correctly.

Workaround is to add injection of the desired bean (in this case TemplateRendeder) to a Service, which is detected correctly.

So creating this bean in your plugin

@ExportAsService({DependencyHackService.class})
public class DependencyHaskServiceImpl implements DependencyHackService {
@ComponentImport
TemplateRenderer templateRenderer;

@Inject
public DependencyHaskServiceImpl() {
}
}

makes TemplateRenderer available and e.g. additionalBuildConfigurationPlugin starts using it normally via setTemplateRenderer.

Julius Hutuleac April 22, 2018

Thanks Oleg, I will try it someday. Currently I have to fallback to previous build methods, component-import xml tags. Spring scanner is causing a mess in my dependencies, especially on the remote plug-in components.

Plug-ins having mixture of components server/agent side are affected badly.

Julius

Jonas Pedersen August 28, 2018

I had the same problem, and this actually solved my issue. Thanks @Oleg Efimov

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events