Sending FHIR bundle object to a router failing
I would like to send bundle object to a router and then
perform a DTL with in the routing rule ( this BundleObject as a source to my DTL).
during this process , I get below exception
reqStream = json content in a stream
Set BundleObject=##class(HS.FHIR.DTL.vR4.Model.Resource.Bundle).FromJSON(reqStream,"vR4")
Set tSC = BusinessService.SendRequestSync("SAMPLE_ROUTER", BundleObj)
expection :
ERROR <Ens>ErrException: <METHOD DOES NOT EXIST>zNewRequestMessage+4^Ens.MessageHeader.1 *%GetSwizzleObject,HS.FHIR.DTL.vR4.Model.Resource.Bundle -- logged as '-' number - @''
Comments
A production/ensemble message, a request in your case, MUST be a %Persistent class.
BundleObject is a %DynamicObject and is not (does not extend) a %Presistent class.
This is how I am doing :
---------
Class PKG.ObservationWrapper Extends %Persistent
{
Property bundleReq As HS.FHIR.DTL.vR4.Model.Resource.Bundle;
}
-------
Set wrapperBundleObj = ##class(PKG.ObservationWrapper).%New()
Set wrapperBundleObj.bundleReq = ##class(HS.FHIR.DTL.vR4.Model.Resource.Bundle).FromJSON(reqStream,"vR4")
Set tSC = BusinessService.SendRequestSync("SAMPLE_ROUTER", wrapperBundleObj.bundleReq)
expection :
ERROR <Ens>ErrException: <METHOD DOES NOT EXIST>zNewRequestMessage+4^Ens.MessageHeader.1 *%GetSwizzleObject,HS.FHIR.DTL.vR4.Model.Resource.Bundle -- logged as '-' number - @''
=======================================
The class HS.FHIR.DTL.vR4.Model.Resource.Bundle is a registered object and cannot be used in a persistent class property.