0

BIRT(getURI)で利用できるのと同じURIをプログラムで取得できるようにしたいと思います。Rational Software Modelerプラグレットを開発しており、ダイアグラム要素の一意の識別子を取得する必要があります。これにより、後のデータベースETLプロセスで要素を認識できるようになります。

BIRTレポートで返されるものの半分しか返さないことを除いて、EObject.eResource()。getURI()を介して利用可能なURIを見つけました。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 に答える