Разработка плагинов Atlassian JIRA: как сделать переменные доступными для шаблонов скорости - PullRequest
9 голосов
/ 02 октября 2009

Справедливое предупреждение: на этот вопрос будет довольно сложно ответить, если у вас нет опыта работы с JIRA и доступа к их источнику (корпоративные пользователи).

Привет всем,

Я пишу плагин, который расширяет AbstractIssueSelectAction. Я заметил, что ${issue.summary} и т. Д. Доступны из моего шаблона скорости, однако есть и другие вещи, которые я хотел бы раскрыть. Я не могу понять, как добавить другие вещи в карту параметров скорости. Я даже использовал удаленный отладчик, чтобы попытаться пройтись по стеку и выяснить, что происходит, но мне было довольно неясно, как из-за большого стека, так и из-за того, что я не смог правильно подключить все исходники (и многие вещи в Интернете, кажется, запутаны).

Я также разместил этот вопрос на форумах поддержки Atlassian, я просто делюсь кросс-постами здесь, чтобы больше взглянуть на проблему.

Пример кода действия:

public class MyOperation extends AbstractIssueSelectAction {

    // ...
    private final Issue myIssue;

    public String doCollect() throws Exception {
      log.debug("Running doCollect()");
      return "collectinfo";
    }
 }

Пример конфигурации плагина:

  <webwork1 key="unique_key" name="My Name" class="java.lang.Object">
   <actions>
    <action name="com.mycompany.jira.extensions.MyOperation" alias="MyOperation">
     <view name="collectinfo">/templates/myoperation-collectinfo.vm</view>
     <view name="success">/templates/myoperation-success.vm</view>
    </action>
   </actions>
  </webwork1>

В шаблоне скорости ${issue.summary} правильно разрешается в сводке по текущей проблеме, но если, например, myIssue была какой-то другой проблемой, я хочу использовать ${myIssue.summary}.

Спасибо! -Carl

1 Ответ

7 голосов
/ 02 октября 2009

Как насчет использования $ action.mymethod () для получения информации, где mymethod - это метод, который вы определяете в классе Action «MyOperation»? Параметры скорости очень сложны, чтобы узнать, как они заполняются.

~ Matt

...