我按照这个非常简单的教程https://bitbucket.org/bhushan154/jira-issue-tab-panel-tutorial/wiki/Home添加了一个新的问题选项卡面板。它展示了如何使用 stringBuilder 向页面添加简单的内容。理想情况下,我想使用速度模板,因为它更容易使用并适当地分离逻辑。我有一个模板文件,其中包含:
<div class="mod-header">
<h3>$i18n.getText('service-now-tab-panel.label')</h3>
</div>
我试过摆弄这个试图让它正确显示数据,它没有做任何事情,也没有在问题详细信息页面上呈现内容。这是控制器,它现在是准系统,因为我需要通过这个路障。
package com.verys.jira.plugins.panels;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.atlassian.jira.plugin.issuetabpanel.AbstractIssueTabPanel;
import com.atlassian.jira.plugin.issuetabpanel.IssueTabPanel;
import com.atlassian.jira.issue.tabpanels.GenericMessageAction;
import com.atlassian.jira.issue.Issue;
import com.atlassian.jira.issue.CustomFieldManager;
import com.atlassian.jira.issue.fields.CustomField;
import com.atlassian.crowd.embedded.api.User;
import java.util.Collections;
import java.util.List;
public class ServiceNowTabPanel extends AbstractIssueTabPanel implements IssueTabPanel
{
private static final Logger log = LoggerFactory.getLogger(ServiceNowTabPanel.class);
public List getActions(Issue issue, User remoteUser)
{
return Collections.singletonList(new GenericMessageAction("" + issue.getReporter().getDisplayName() + ""));
}
public boolean showPanel(Issue issue, User remoteUser)
{
return true;
}
}
在问题选项卡面板上渲染速度模板的文档非常稀少,几乎不存在。如果有人能指出我正确的方向,那就太好了。这里也是属性文件
<issue-tabpanel key="service-now-tab-panel" name="Service Now Tab Panel" i18n-name-key="service-now-tab-panel.name" class="com.verys.jira.plugins.panels.ServiceNowTabPanel">
<description key="service-now-tab-panel.description">The Service Now Tab Panel Plugin</description>
<label key="service-now-tab-panel.label">Plugin Test</label>
<order>10</order>
<resource type="velocity" name="view" location="templates/tabpanels/service-now-tab-panel.vm"/>
<supports-ajax-load>true</supports-ajax-load>
</issue-tabpanel>