0

我正在尝试在 wiki 页面上发布指向工作项的链接,但我的查询返回以下结果: PObject(WorkItem; subterra:data-service:objects:/default/chili_v2.2${WorkItem}WI-43)

这是我的代码:

#set ( $id = $wi.id)
#set ($query = "project.id:$page.getProject() AND type:process  AND backlinkedWorkItems:$id")

#set ($foundItems1 = $trackerService.queryWorkItems($query, null))

如何提取工作项 ID 并链接到该项目?或者我如何更改我的查询以直接获得工作项的链接?

我真的很感激一些帮助。它看起来很简单,但我无法弄清楚解决方案。

谢谢,卢卡斯

4

2 回答 2

3

您在$foundItems1变量中拥有的是一个 Java 列表。由于您的查询仅基于 抓取一个 Workitem id,因此它是一个包含一个对象的列表;具体来说,一个 Workitem 对象。

根据Polarion Java SDK,Workitems 有一个.getId()方法。因此,要在 wiki 上吐出指向 Workitem 的链接,您可以遍历列表并使用{workitem}指令......像这样:

#foreach($foundItem in $foundItems1)
    {workitem:$foundItem.getId()}
#end
于 2014-04-25T18:57:19.150 回答
0

在 Polarion 中调试此类问题时,检查引起问题的对象的类别总是很有用的。您可以像这样轻松地做到这一点:

$foundItems1.class \\

它会给你

class com.polarion.platform.persistence.spi.PObjectList 

这是您可以在 Polarion API 文档中查找的内容。知道它是一个列表,将帮助您找到如 a_whit 所示的解决方案。

一些更有用的检查可能是:

$foundItems1.size()
$foundItems1.get(0).class  ## (works only when size() > 0)
$foundItems1.get(0).getId()
于 2015-01-14T09:02:41.573 回答