HDR: Oracle HDR ITI-41 WebService Does Not Persist ClinicalDocument With NonXMLBody (Doc ID 2127175.1)

Last updated on MAY 07, 2017

Applies to:

Oracle Healthcare Data Repository - Version 7.0.1 and later
Information in this document applies to any platform.

Goal

In HDR 7.0.1.5, when trying to register nonXMLBody ClinicalDocument using ITI-41 WebService,  value of CTB_XDS_DOCUMENT_IMPORT was successful in the case of N, but in the case of Y failed.

Using the XDS.b with the profile option with CTB_XDS_DOCUMENT_IMPORT set to 'Y'. This functionality will import a valid CDA document into HDR and return success for the ITI-41 transaction if import is successfully. It will fail if the CDA is invalid. The error is displayed when trying to import a CDA document with nonXML body and the import fails hence the ITI-41 returns failed transaction. But a CDA with nonXML body is a valid CDA as well so the HDR code should check whether the CDA has nonXML body and bypass import if that is the case. So ITI-41 should return success if document is CDA with nonXML body even when CTB_XDS_DOCUMENT_IMPORT is set to 'Y'.

Why Oracle HDR is failing if CTB_XDS_DOCUMENT_IMPORT = Y?

Oracle HDR logfile (hdr.log) shows the following errors:

Mar 30, 2016 10:25:03 AM oracle.dms.context.internal.AbstractContextManager isLegalValue
WARNING: The size of the proposed value for context parameter ADF_MESSAGE_CONTEXT_DATA is 948 and exceeds the permitted size of 256 for that parameter.
Mar 30, 2016 10:25:13 AM oracle.apps.ctb.fwk.base.server.CTBAppsLogHelper logException
SEVERE: oracle.apps.ctb.ihe.xdsb.repository.inbound.server.CCDBuilder.buildSections : Error Copying JAXB obj to HTB obj
java.lang.Exception: Error Copying JAXB obj to HTB obj
at oracle.apps.ctb.ihe.xdsb.logger.server.XDSLogger.error(XDSLogger.java:98)
at oracle.apps.ctb.ihe.xdsb.repository.inbound.server.CCDBuilder.buildSections(CCDBuilder.java:55)
at oracle.apps.ctb.ihe.xdsb.repository.inbound.server.IBDocProcessor.importDocument(IBDocProcessor.java:121)
at oracle.apps.ctb.ihe.xdsb.repository.inbound.server.IBDocProcessor.persistDocument(IBDocProcessor.java:669)
................
Caused by: oracle.apps.ctb.ihe.xdsb.exception.server.XDSException
CODE = CTB_IHE_XDS_INTERNAL_ERR
MESSAGE = IHE XDS repository internal error. Cause: oracle.apps.ctb.hl7.common.RimAttributeMissingException : Invalid parameter was passed into this API. Required parameter [target] was null. RIM Object Id: null

Child Exceptions:

Detail 0

oracle.apps.ctb.hl7.common.RimAttributeMissingException
TYPE_PARAM = ERROR
CODE_PARAM = CTB_NULL_PARAMETER
MESSAGE_PARAM = Invalid parameter was passed into this API. Required parameter [target] was null. RIM Object Id: null
at oracle.apps.ctb.hl7.rim.common.InfrastructureRootImpl.newParameterMissingException(InfrastructureRootImpl.java:712)
at oracle.apps.ctb.hl7.rim.common.ActImpl.addOBActRelationship(ActImpl.java:744)
..................
Mar 30, 2016 10:25:13 AM oracle.apps.ctb.fwk.base.server.CTBAppsLogHelper logException
SEVERE: oracle.apps.ctb.ihe.xdsb.repository.server.IHEXDSServiceAMImpl.handleProvideAndRegisterDocBException : PnR.b failed for document(s): 1.3.6.1.4.1.41000.2.871.8.9999^1. Cause: IHE XDS repository internal error. Cause: oracle.apps.ctb.ihe.xdsb.exception.server.XDSException : IHE XDS repository internal error. Cause: oracle.apps.ctb.hl7.common.RimAttributeMissingException : Invalid parameter was passed into this API. Required parameter [target] was null. RIM Object Id: null
java.lang.Exception: PnR.b failed for document(s): 1.3.6.1.4.1.41000.2.871.8.9999^1. Cause: IHE XDS repository internal error. Cause: oracle.apps.ctb.ihe.xdsb.exception.server.XDSException : IHE XDS repository internal error. Cause: oracle.apps.ctb.hl7.common.RimAttributeMissingException : Invalid parameter was passed into this API. Required parameter [target] was null. RIM Object Id: null
at oracle.apps.ctb.ihe.xdsb.logger.server.XDSLogger.error(XDSLogger.java:98)
at oracle.apps.ctb.ihe.xdsb.repository.server.IHEXDSServiceAMImpl.handleProvideAndRegisterDocBException(IHEXDSServiceAMImpl.java:281)
at oracle.apps.ctb.ihe.xdsb.repository.server.IHEXDSServiceAMImpl.provideAndRegisterDocumentSetB(IHEXDSServiceAMImpl.java:231)
at oracle.apps.ctb.ihe.xdsb.repository.server.XDSbTransactionProcessor.provideAndRegisterDocumentSetB(XDSbTransactionProcessor.java:132)
........................
Caused by: oracle.apps.ctb.ihe.xdsb.exception.server.XDSException
CODE = CTB_IHE_XDS_INTERNAL_ERR
MESSAGE = IHE XDS repository internal error. Cause: oracle.apps.ctb.ihe.xdsb.exception.server.XDSException : IHE XDS repository internal error. Cause: oracle.apps.ctb.hl7.common.RimAttributeMissingException : Invalid parameter was passed into this API. Required parameter [target] was null. RIM Object Id: null

Child Exceptions:

Detail 0

oracle.apps.ctb.ihe.xdsb.exception.server.XDSException
CODE = CTB_IHE_XDS_INTERNAL_ERR
MESSAGE = IHE XDS repository internal error. Cause: oracle.apps.ctb.hl7.common.RimAttributeMissingException : Invalid parameter was passed into this API. Required parameter [target] was null. RIM Object Id: null

Child Exceptions:

Detail 0

oracle.apps.ctb.hl7.common.RimAttributeMissingException
TYPE_PARAM = ERROR
CODE_PARAM = CTB_NULL_PARAMETER
MESSAGE_PARAM = Invalid parameter was passed into this API. Required parameter [target] was null. RIM Object Id: null
at oracle.apps.ctb.hl7.rim.common.InfrastructureRootImpl.newParameterMissingException(InfrastructureRootImpl.java:712)
at oracle.apps.ctb.hl7.rim.common.ActImpl.addOBActRelationship(ActImpl.java:744)
at oracle.apps.ctb.ihe.xdsb.repository.inbound.mapper.server.InClinicalDocumentMapper.copyClinicalDocumentToHTB(InClinicalDocumentMapper.java:504)
..........................
Mar 30, 2016 10:25:14 AM oracle.adf.share.ADFContext$1 run
SEVERE: ADF detected an ADFContext leak.
Please see the documentation for more information about handling ADFContext leaks.
For more information about the leaking ADFContext please enable logging for oracle.adf.share.ADFContext at FINEST level.
Set Count=1 Remove Count=0
>> Allocation stacks:
>>>> Set ADFContext:
java.lang.Thread.getStackTrace(Thread.java:1589)
oracle.adf.share.ADFContext.storeAllocationStack(ADFContext.java:1589)
oracle.adf.share.ADFContext.setAsCurrent(ADFContext.java:1520)
oracle.adf.share.ADFContext.createDefaultContext(ADFContext.java:1167)

 


 

Solution

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms