1
我有一個FHIR設備資源,其中包含FHIR DeviceComponent資源。我用下面的高致病性禽流感FHIR代碼「插入」一個資源到其他:HAPI FHIR Json編碼器不處理包含資源
protected static void insertResourceInResouce(BaseResource resource, BaseResource resourceToInsert)
{
ContainedDt containedDt = new ContainedDt();
ArrayList<IResource> resourceList = new ArrayList<IResource>();
resourceList.add(resourceToInsert);
containedDt.setContainedResources(resourceList);
resource.setContained(containedDt);
}
根據Eclipse調試器插入正常工作。這個插入的資源將被添加到一個包中。當所有工作完成後,Eclipse調試器會顯示資源,其中包含的資源已正確放入捆綁包中。但是,在生成JSON字符串時,包含的資源不存在。編碼操作如下所示:
return fhirContext.newJsonParser().setPrettyPrint(true)
.encodeResourceToString(bundle);
任何想法我做錯了什麼?
嗨,布賴恩,很高興你有這個工作!就像一個參考:這是必需的原因是,包含的資源只有在FHIR中從包含資源引用(或間接來自包含資源引用的另一個包含資源)纔有效。 HAPI會忽略無效的包含資源,以幫助人們避免依賴無效行爲,這些行爲可能無法在FHIR實施中移植。 –