我正在爲jira開發一個包含自定義字段類型的插件。 該字段是一個選擇,必須填寫選項。我通過Jira方法getVelocityParameters()提供這些選項。與Jira在速度模板中調用Java方法的問題
@Override
public Map<String, Object> getVelocityParameters(Issue issue,
CustomField field, FieldLayoutItem fieldLayoutItem) {
Map<String, Object> map = super.getVelocityParameters(issue, field, fieldLayoutItem);
map.put("customOptions", getCustomOptions());
return map;
}
getCustomOptions()返回一個帶有我需要的選項的Hashtable。
訪問和顯示這些選項,我用的模板#foreach循環:而不是顯示返回的對象也只是簡單地顯示文本本身的
#foreach($customOption in $customOptions)
<option id="$customOption.Id" value="$customOption.Value">
$customOption.Label
</option>
#end
,只有「$ customOption.Id」是正確顯示。 而只寫「$ customOption」則顯示對象的整個引用。 所以我可以訪問對象和它的id,但不是其他屬性。
Id是一個int,而標籤和值是Strings。
我搜索解決方案,並嘗試不同的東西來解決這個問題,比如: $ customOption.Label,$,$ {} customOption.Label,$ customOption.getLabel()
!{customOption.Label!}我在這裏找不到問題,因爲這個ID工作正常。
Sry for broken english。
方法返回NULL因此被正確地顯示任何內容。我假設了一個Exception或一個「」,而不是隻顯示「$ customOption.Label」。反正ty。 – Don