Groovy Script Runner を使用してカスタム Jira フィールドの値を取得したいと考えています。しかし、スクリプト ランナーで次のスクリプトを実行すると、次のようになります。
import com.atlassian.jira.ComponentManager
import com.atlassian.jira.issue.CustomFieldManager
import com.atlassian.jira.issue.fields.CustomField
ComponentManager componentManager = ComponentManager.getInstance()
CustomFieldManager customFieldManager = componentManager.getCustomFieldManager()
CustomField cf= customFieldManager.getCustomFieldObject("customfield_10301")
issue = componentManager.getIssueManager().getIssueObject("PM-72")
def value = issue.getCustomFieldValue(cf)
結果は次のとおりです。
<img src="/images/icons/priority_critical.gif"/> High
High
html<img>
要素なしで取得するにはどうすればよいですか?
更新: @doelleri の助けを借りて、スクリプトの最後の行を次のように変更するとうまくいくことがわかりました。
def value = issue.getCustomFieldValue(cf).getValue().tokenize().last()
...しかし、それは確かにハックのように感じます. これを達成するための組み込みの方法はありませんか?たとえば、これがカスタム フィールド (「優先度」など) でない場合、コードは次のようになります。
def value = issue.getPriority().getString("name");
カスタムフィールドに匹敵するものはありますか?