Craig, Jim, The simplest way you could get an Index out of bounds is most likely due to the *theDefinitionPath *variable being empty (ie get element 0-1=-1). I would doubt that this is a concurrency issue.
I have encountered several issues with Hapi not keeping track of the underlying field indices. I have particular issues with optional repeating segments which can appear out of nowhere due to an index being created when you use .toString() on a Hapi Message object. If you can identify which field is the possible culprit then cross reference the spec with that field and see if your input data is missing a required field. -Mike On Tue, 29 Jan 2019 at 10:42, McClendon, Craig < craig.mcclen...@accenture.com> wrote: > Looking at your stacktrace, and lightly looking into the HAPI code, my > first guess is this looks like a concurrency issue of some sort. > > > > The method in the HAPI code throwing this exception is this: > > * private Position getTail(List<Position> theDefinitionPath) {* > > * return theDefinitionPath.get(theDefinitionPath.size() - 1);* > > * }* > > > > In a single-threaded application, that call should always be safe, but in > this case it is throwing an ArrayIndexOutOfBoundsException, indicating the > size of the list is being changed elsewhere (like in another thread). > > > > I don’t know the HAPI codebase very well, so it’s tough to say if/how that > should be possible. > > > > Here is semi-blind a guess though: > > > > From the stacktrace line here: > > *at ca.uhn.hl7v2.app.Responder.processMessage(Responder.java:91)* > > > > This is the method signature: > > * /*** > > * * Processes an incoming message string and returns the > response message* > > * * string. Message processing consists of parsing the > message, finding an* > > * * appropriate Application and processing the message with > it, and encoding* > > * * the response. Applications are chosen from among those > registered using* > > * * <code>registerApplication</code>. The Parser is > obtained from the* > > * * Connection associated with this Responder.* > > * */* > > * protected String processMessage(String > incomingMessageString)* > > * throws HL7Exception {* > > > > It indicates message processors are chosen from the list of those > registered with “registerApplication”. > > I do not know how that registration occurs, but is it possible that > multiple applications have been registered ? > > Or that something has been instantiated multiple times somewhere? > > > > > > > > *From:* Gay, Jim <g...@email.chop.edu> > *Sent:* Monday, January 28, 2019 1:47 PM > *To:* hl7api-devel@lists.sourceforge.net > *Subject:* [External] [HAPI-devel] ORU Ingest Error > > > > All, > > > > We are having an issue where our stream of ORU data suddenly stops > receiving data. > > > > Console error message: > > An exception occurred during the execution of the HapiMessageSupplier > operator. Processing element number 9 is terminating > > > > The error log is attached to the email. > > > > If anyone has any ideas I would love to hear from you. > > Also, if anyone is using the ADT or ORU ingest and would like to share > thoughts and ideas feel free to reach out. > > > > Thanks! > > > > Jim Gay > > Enterprise Analytics & Reporting > 3401 Civic Center Blvd. > > Philadelphia, PA 19104 > > 267-426-1958 > > g...@email.chop.edu ● chop.edu > > > > > > ------------------------------ > > This message is for the designated recipient only and may contain > privileged, proprietary, or otherwise confidential information. If you have > received it in error, please notify the sender immediately and delete the > original. Any other use of the e-mail by you is prohibited. Where allowed > by local law, electronic communications with Accenture and its affiliates, > including e-mail and instant messaging (including content), may be scanned > by our systems for the purposes of information security and assessment of > internal compliance with Accenture policy. Your privacy is important to us. > Accenture uses your personal data only in compliance with data protection > laws. For further information on how Accenture processes your personal > data, please see our privacy statement at > https://www.accenture.com/us-en/privacy-policy. > > ______________________________________________________________________________________ > > www.accenture.com > _______________________________________________ > Hl7api-devel mailing list > Hl7api-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/hl7api-devel >
_______________________________________________ Hl7api-devel mailing list Hl7api-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hl7api-devel