0

我希望能够以编程方式检索可通过 BIRT (getURI) 获得的相同 URI。我正在开发一个 Rational Software Modeler 插件,并且需要获取图表元素的唯一标识符。这将使元素能够在以后的数据库 ETL 过程中被识别。

我通过 EObject.eResource().getURI() 找到了一个可用的 URI,除了它只返回 BIRT 报告中返回的内容的一半。BIRT 报告类似“platform:/resource/Common/S.efx#_c0KLYFImEd-iIqDctBy_JQ”的内容,而 EObject.eResource().getURI() 仅返回“platform:/resource/Common/S.efx”

任何帮助,将不胜感激。

4

1 回答 1

2

您应该能够使用 ECoreUtil.getURI(EObject) 函数获取整个 URI,它还应该包括片段部分。

EObject.eResource().getURI() 会返回该对象所在的资源 URI,因此它不会包含对象自己的唯一 ID。

那个片段结束哈希是 EObjects XMI-ID,如果需要,可以使用 ECoreUtil.getID(EObject) 返回。但是 ECoreUtil.getURI(EObject) 应该没问题。

于 2011-01-18T23:07:38.813 回答