drajer-health / eCRNow

Repository for eCRNow app.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

EICR XML validation error: "Cannot resolve the name 'hl7:INT' to a(n) 'type definition' component."

ayjaweems opened this issue · comments

After making a request to the /launchPatient endpoint, I see this error related to the CDA_SDTC.xsd file. This doesn't prevent the EICR document from being sent to the AIMS platform, but I'm not sure if it impacts the reportability response workflow?

Logs
10:05:00.649 [db-scheduler-pool-1-thread-2] INFO  c.d.bsa.kar.action.ValidateReport - BSA Action Status:com.drajer.bsa.kar.action.ValidateReportStatus@13cd89e1
10:05:00.728 [db-scheduler-pool-1-thread-2] ERROR c.drajer.cda.utils.CdaValidatorUtil -  **** Error loading XSD file from the location : C:/RXNTSrc/ecr-now-app/ecrNow/src/main/resources/artifacts/CDA_SDTC.xsd
org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name 'hl7:INT' to a(n) 'type definition' component.
        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:204)
        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:135)
        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:396)
        at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaErr(XSDHandler.java:4204)
        at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaError(XSDHandler.java:4187)
        at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.getGlobalDecl(XSDHandler.java:1710)
        at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDSimpleTypeTraverser.findDTValidator(XSDSimpleTypeTraverser.java:441)
        at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDSimpleTypeTraverser.getSimpleType(XSDSimpleTypeTraverser.java:283)
        at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDSimpleTypeTraverser.traverseSimpleTypeDecl(XSDSimpleTypeTraverser.java:162)
        at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDSimpleTypeTraverser.traverseGlobal(XSDSimpleTypeTraverser.java:103)
        at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.traverseSchemas(XSDHandler.java:1474)
        at com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:655)
        at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:610)
        at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:569)
        at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:535)
        at com.sun.org.apache.xerces.internal.jaxp.validation.XMLSchemaFactory.newSchema(XMLSchemaFactory.java:269)
        at javax.xml.validation.SchemaFactory.newSchema(SchemaFactory.java:638)
        at com.drajer.cda.utils.CdaValidatorUtil.getSchema(CdaValidatorUtil.java:42)
        at com.drajer.cda.utils.CdaValidatorUtil.<clinit>(CdaValidatorUtil.java:31)
        at com.drajer.bsa.kar.action.ValidateReport.validateCdaOutput(ValidateReport.java:113)
        at com.drajer.bsa.kar.action.ValidateReport.process(ValidateReport.java:69)
        at com.drajer.bsa.kar.model.BsaAction.executeRelatedActions(BsaAction.java:245)
        at com.drajer.bsa.kar.action.CreateReport.process(CreateReport.java:153)
        at com.drajer.bsa.kar.model.BsaAction.executeRelatedActions(BsaAction.java:245)
        at com.drajer.bsa.kar.action.CheckTriggerCodes.process(CheckTriggerCodes.java:129)
        at com.drajer.bsa.kar.model.BsaAction.executeSubActions(BsaAction.java:162)
        at com.drajer.bsa.kar.action.ExecuteReportingActions.process(ExecuteReportingActions.java:32)
        at com.drajer.bsa.service.impl.KarProcessorImpl.applyKarForScheduledJob(KarProcessorImpl.java:247)
        at com.drajer.bsa.service.impl.KarProcessorImpl$$FastClassBySpringCGLIB$$71cc7050.invoke(<generated>)
        at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:771)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:367)
        at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:118)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:749)
        at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:691)
        at com.drajer.bsa.service.impl.KarProcessorImpl$$EnhancerBySpringCGLIB$$58f63b7a.applyKarForScheduledJob(<generated>)
        at com.drajer.bsa.scheduler.ScheduleJobConfiguration.lambda$0(ScheduleJobConfiguration.java:58)
        at com.github.kagkarlsson.scheduler.task.helper.Tasks$OneTimeTaskBuilder$1.executeOnce(Tasks.java:211)
        at com.github.kagkarlsson.scheduler.task.helper.OneTimeTask.execute(OneTimeTask.java:52)
        at com.github.kagkarlsson.scheduler.ExecutePicked.executePickedExecution(ExecutePicked.java:85)
        at com.github.kagkarlsson.scheduler.ExecutePicked.run(ExecutePicked.java:68)
        at com.github.kagkarlsson.scheduler.FetchCandidates.lambda$run$1(FetchCandidates.java:89)
        at java.util.Optional.ifPresent(Optional.java:159)
        at com.github.kagkarlsson.scheduler.FetchCandidates.lambda$run$2(FetchCandidates.java:87)
        at com.github.kagkarlsson.scheduler.Executor.lambda$addToQueue$0(Executor.java:52)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:750)
10:05:00.729 [db-scheduler-pool-1-thread-2] ERROR c.drajer.cda.utils.CdaValidatorUtil - No schema present to validate the EICR XML

(Including this from the prior ticket because I'm not sure if this error is related:)

Originally posted by @ayjaweems in #640 (comment)

The error is related to your Direct Transport and the HISP, are you able to send data via the HISP manually. Also what HISP are you using ?

Hi @nbashyam I've switched to sending the eICR data using the Rest API endpoint and is working successfully, a new entry is created in the ph_messages table. I also realized the files weren't being logged to the bsa.output.directory path because the save.debug.files was false in the configuration so we're getting debug files outputted now in that folder.

How long does it take for the reportability response document to be received? We're using a Rest API in that case also. I see the scheduled task created for the encounter has an execution time of three days from when the app was launched, would the RR document be generated and sent back after that time?

RR documents are sent back within 5 minutes of the eICR being sent typically.
Are you getting a response within 5 minutes, if not please contact the onboarding team on the issue.

@ayjaweems , following up to see if you will be reaching out to the onboarding team?

I will forward the issue.