1. Write the below in the atlassian-plugin.xml.
<component key="helloWorldService" public="true" class="com.akira.MyHelloWorldServiceImpl">
<interface>com.akira.MyHelloWorldService</interface>
</component>
2. MyHelloWorldService
package com.akira;
public interface MyHelloWorldService {
String getMessage();
}
3. MyHelloWorldServiceImpl
package com.akira;
public class MyHelloWorldServiceImpl implements MyHelloWorldService {
public String getMessage() {
return "Hello World";
}
}
4. Use the Component Plugin Module in an ActionSupport class.
public class AkiraActionSupport extends JiraWebActionSupport {
private MyHelloWorldService _myHelloWorldService;
public String doExecute() {
System.out.println(_myHelloWorldService.getMessage());
return SUCCESS;
}
}
5. A NullPointerException occurs because the dependency-injection fails.
6. What other steps are required to make Componet Module available.
Community moderators have prevented the ability to post new answers.
Inject it in constructor.
public class AkiraActionSupport extends JiraWebActionSupport {
private MyHelloWorldService _myHelloWorldService;
public AkiraActionSupport(MyHelloWorldService _myHelloWorldService){
this.myHelloWorldService = myHelloWorldService;
}
public String doExecute() {
System.out.println(_myHelloWorldService.getMessage());
return SUCCESS;
}
}
You will need component-import if you are using it in a different plugin.
Thank you very much.
I forgot how to use Springframework's dependency injection.
But I am wondering if I can inject it using Annotation Qualifier in JIRA like below.
@Autowired
@Qualifier("MyHelloWorldService")
private MyHelloWorldService _myHelloWorldService;
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
it seems you can. Just create custom spring-only xml definition in resource/META-INF/spring/*.xml. You can read more about it in: https://developer.atlassian.com/display/PLUGINFRAMEWORK/Advanced+Configuration+with+Spring+XML+Files Don't forget <context:annotation-config /> (as in: https://answers.atlassian.com/questions/29872/why-is-spring-autowire-not-working-for-my-jira-plugin-classes)
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.