1

我在 Jira 插件开发中使用活动对象。

对于使用 webwork 插件模块类型创建的 JiraWebActionSupport,它可以正常工作。

@Named
public class IssueConfigAction extends JiraWebActionSupport
{
private static final Logger log = 
LoggerFactory.getLogger(IssueConfigAction.class);


@ComponentImport
private final ActiveObjects ao; 
private String issueId;


@Inject
public IssueConfigAction(ActiveObjects ao){
    this.ao=ao;
}


@Override
protected String doExecute() throws Exception {

    IssueConfig ic = ao.create(IssueConfig.class);
    ic.setIssueId(issueId);
    ic.save(); 
    return SUCCESS;

}

public String getIssueId() {
    return issueId;
}


public void setIssueId(String issueId) {
    this.issueId = issueId;
}
}

但是我如何在任何其他类中使用活动对象,例如抽象问题操作?

public class IssueTabAction extends AbstractIssueAction {

@ComponentImport
private final ActiveObjects ao; 

@Inject
public IssueTabAction(IssueTabPanelModuleDescriptor descriptor) {
    super(descriptor);
}

@Inject
public IssueTabAction(ActiveObjects ao) {
    super();
    this.ao=ao;
}


@Override
public Date getTimePerformed() {
    // TODO Auto-generated method stub
    return new Date();
}

@Override
protected void populateVelocityParams(Map params) {
    params.put("user", ComponentAccessor.getJiraAuthenticationContext().getLoggedInUser().getDisplayName());
    params.put("strings", new String[]{"1","2","3","4"});
}

}

我不知道如何正确注入构造函数?还是有更好的方法来做到这一点?

4

0 回答 0