You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
(6) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(2) |
Feb
(1) |
Mar
|
Apr
(4) |
May
(5) |
Jun
(6) |
Jul
(3) |
Aug
(13) |
Sep
(28) |
Oct
(33) |
Nov
(8) |
Dec
(1) |
2003 |
Jan
(6) |
Feb
(2) |
Mar
|
Apr
(25) |
May
(21) |
Jun
(13) |
Jul
(12) |
Aug
(14) |
Sep
(6) |
Oct
(6) |
Nov
(16) |
Dec
(6) |
2004 |
Jan
(5) |
Feb
(7) |
Mar
(13) |
Apr
(17) |
May
(24) |
Jun
(14) |
Jul
(14) |
Aug
(8) |
Sep
(3) |
Oct
(8) |
Nov
(14) |
Dec
(26) |
2005 |
Jan
(18) |
Feb
(12) |
Mar
(29) |
Apr
(9) |
May
(4) |
Jun
(12) |
Jul
(17) |
Aug
(9) |
Sep
(12) |
Oct
|
Nov
(12) |
Dec
|
2006 |
Jan
(46) |
Feb
(18) |
Mar
(11) |
Apr
(13) |
May
(12) |
Jun
(27) |
Jul
(34) |
Aug
(45) |
Sep
(27) |
Oct
(13) |
Nov
(26) |
Dec
(22) |
2007 |
Jan
(21) |
Feb
(29) |
Mar
(32) |
Apr
(6) |
May
(11) |
Jun
(13) |
Jul
(14) |
Aug
(11) |
Sep
(15) |
Oct
(7) |
Nov
(30) |
Dec
(16) |
2008 |
Jan
(11) |
Feb
(14) |
Mar
(5) |
Apr
(18) |
May
(12) |
Jun
(11) |
Jul
(5) |
Aug
(12) |
Sep
(3) |
Oct
(2) |
Nov
(15) |
Dec
(2) |
2009 |
Jan
(18) |
Feb
(6) |
Mar
(9) |
Apr
(10) |
May
(29) |
Jun
(16) |
Jul
(44) |
Aug
(49) |
Sep
(14) |
Oct
(21) |
Nov
(11) |
Dec
(22) |
2010 |
Jan
(12) |
Feb
(13) |
Mar
(5) |
Apr
(6) |
May
(15) |
Jun
(15) |
Jul
(14) |
Aug
(20) |
Sep
(17) |
Oct
(36) |
Nov
(19) |
Dec
(7) |
2011 |
Jan
(8) |
Feb
(14) |
Mar
(21) |
Apr
(12) |
May
(6) |
Jun
(12) |
Jul
(17) |
Aug
(6) |
Sep
(13) |
Oct
(15) |
Nov
(26) |
Dec
(9) |
2012 |
Jan
(25) |
Feb
(13) |
Mar
(31) |
Apr
(10) |
May
(16) |
Jun
(21) |
Jul
(61) |
Aug
(38) |
Sep
(16) |
Oct
(13) |
Nov
(37) |
Dec
(26) |
2013 |
Jan
(20) |
Feb
(26) |
Mar
(34) |
Apr
(32) |
May
(27) |
Jun
(56) |
Jul
(16) |
Aug
(38) |
Sep
(35) |
Oct
(17) |
Nov
(11) |
Dec
(7) |
2014 |
Jan
(36) |
Feb
(13) |
Mar
(25) |
Apr
|
May
(27) |
Jun
(33) |
Jul
(34) |
Aug
|
Sep
(4) |
Oct
(11) |
Nov
(42) |
Dec
(2) |
2015 |
Jan
(5) |
Feb
(6) |
Mar
(11) |
Apr
(3) |
May
|
Jun
(1) |
Jul
(2) |
Aug
(5) |
Sep
(5) |
Oct
(5) |
Nov
(8) |
Dec
(19) |
2016 |
Jan
(8) |
Feb
(12) |
Mar
(6) |
Apr
(5) |
May
(5) |
Jun
(3) |
Jul
(1) |
Aug
|
Sep
(9) |
Oct
(1) |
Nov
(2) |
Dec
(5) |
2017 |
Jan
(2) |
Feb
|
Mar
(3) |
Apr
(6) |
May
(8) |
Jun
(7) |
Jul
(14) |
Aug
(10) |
Sep
(6) |
Oct
(2) |
Nov
|
Dec
|
2018 |
Jan
|
Feb
(9) |
Mar
(2) |
Apr
(3) |
May
(1) |
Jun
(1) |
Jul
(1) |
Aug
(8) |
Sep
(4) |
Oct
(3) |
Nov
(1) |
Dec
(1) |
2019 |
Jan
(10) |
Feb
(2) |
Mar
(6) |
Apr
(1) |
May
(2) |
Jun
|
Jul
(5) |
Aug
|
Sep
(1) |
Oct
(1) |
Nov
|
Dec
|
2020 |
Jan
(9) |
Feb
|
Mar
|
Apr
(6) |
May
|
Jun
(1) |
Jul
(1) |
Aug
|
Sep
(9) |
Oct
(1) |
Nov
(11) |
Dec
|
2021 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
(7) |
Nov
|
Dec
|
2022 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
(2) |
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
(1) |
2023 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
(2) |
Jun
(4) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2024 |
Jan
|
Feb
(7) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(6) |
Nov
|
Dec
|
From: James A. <jam...@gm...> - 2017-08-03 11:28:21
|
Hi Tom, If you are able to, a pull request against the GitHub Project <https://github.com/hapifhir/hapi-hl7v2> would be gratefully accepted. Cheers, James On Thu, Aug 3, 2017 at 7:00 AM, Tom Chiverton <tc...@ex...> wrote: > Here's a patch against the current trunk that adds this support. > > Using a modified version of the send and receive example with a new build > is easy: > > HL7Service server = context.newServer(4567, false, true); // port, > tls, accept all > My server is now able to receive these unsolicited ACKs > > Tom > > > On 02/08/17 10:34, Jens Villadsen wrote: > > Unsolicited ACK's are a bit weird to receive. While I can agree that it > would be nice if the behavior was configurable, it is currently not the > case (as you found out). I guess the case where it makes sense would be in > the case where your opposing system is supporting enhanced > acknowledgements, which HAPI does not really support (the case where an > acknowledgement is sent to you first as a transport ack, and then an > application ack). HAPI only supports a single ack to each message. > > On 2 August 2017 at 11:09, Tom Chiverton <tc...@ex...> wrote: > >> I'm receiving this message from another server (I don't know why). We're >> building an interface between our app and a HL7 server, and the first step >> is just getting the HL7 messages off the wire and storing them. >> >> The Reciever implementation is making a hard coded policy decision that >> my application that's using it does not want to know about some HL7 >> messages. >> >> This should be configurable, at the very least ? >> >> I've had a rough delve through the code, and it seems because Reciever >> isn't an interface, you have to replace whole chunks of other classes as >> well - I think I ended up with over a half dozen cloned classes in my >> package because thing's were private or package and so I couldn't extend >> them easily. >> >> Maybe it would be easier to have a setting (in HapiContext) about what to >> do with them ? >> Tom >> >> On 02/08/17 10:02, Jens Villadsen wrote: >> >> Why would you send an unexpected ACK back to the server? >> >> On 31 July 2017 at 17:00, Tom Chiverton <tc...@ex...> wrote: >> >>> *AH HA*. >>> >>> There's a 3 year old bug with HAPI [1] where it throws away messages if >>> they are unexpected replies. >>> >>> I don't see a way to replace the Receiver instance in use by >>> SimpleServer ? >>> >>> Tom >>> >>> [1] https://sourceforge.net/p/hl7api/feature-requests/88/?limit=25 >>> >>> On 31/07/17 14:51, Tom Chiverton wrote: >>> >>> Hi, >>> >>> Sorry I wasn't clear, but further down my RecivingApplication >>> implementation I do have that : >>> >>> public Message processMessage(Message theMessage, Map<String, Object> >>> theMetadata) throws ReceivingApplicationException, HL7Exception { >>> String encodedMessage = new DefaultHapiContext().getPipePa >>> rser().encode(theMessage); >>> System.out.println("Received message:\n" + encodedMessage + >>> "\n\n"); >>> >>> } >>> >>> This never outputs. >>> >>> Tom >>> >>> On 31/07/17 14:46, Jens Villadsen wrote: >>> >>> Take a look at the example found at http://hl7api.sourceforge.n >>> et/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html and >>> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples >>> /ExampleReceiverApplication.html >>> >>> What you probably would like to look at is the "processMessage" >>> >>> >>> >>> >>> On 31 July 2017 at 12:05, Tom Chiverton <tc...@ex...> wrote: >>> >>>> Given >>>> >>>> >>>> public class EvReceiverApplication implements ReceivingApplication { >>>> >>>> public boolean canProcess(Message theIn) { >>>> System.out.println("Received message: canProcess true"); >>>> return true; >>>> } >>>> >>>> .... >>>> >>>> >>>> I never see this output when a message is received. So it's like the >>>> receiver is not registered ? >>>> >>>> >>>> I am doing >>>> >>>> >>>> HL7Service server = context.newServer(port, useTls); >>>> >>>> ReceivingApplication handler = new EvReceiverApplication(); >>>> >>>> server.registerApplication("*", "*", handler); >>>> >>>> server.startAndWait(); >>>> >>>> Tom >>>> >>>> >>>> On 31/07/17 10:24, Tom Chiverton wrote: >>>> >>>> I have used >>>> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/Sen >>>> dAndReceiveAMessage.html >>>> >>>> to build a simple app that should listen for all messages, and echo >>>> them to the console ( server.registerApplication("*", "*", handler); ). >>>> >>>> >>>> However, although I get a line from the connectionReceived method, and >>>> none from an output I added to the exceptionHandler, I do not get anything >>>> from my processMessage() code. >>>> >>>> >>>> Java 1.8 on Ubuntu Server, with the latest HAPI library. I can confirm >>>> I am getting a message (admittedly it's MSA is "MSA|AA|245635223|Failure") >>>> with a Wireshark packet capture. >>>> >>>> >>>> Any ideas what could be up ? >>>> -- >>>> *Tom Chiverton* >>>> Lead Developer >>>> e: tc...@ex... >>>> p: 0161 817 2922 >>>> t: @extravision <http://www.twitter.com/extravision> >>>> w: www.extravision.com >>>> [image: Extravision - email worth seeing] <http://www.extravision.com/> >>>> Registered in the UK at: First floor, Tomorrow, MediaCityUK, >>>> Manchester, M50 2AB. >>>> Company Reg No: 05017214 VAT: GB 824 5386 19 <24%2053%2086%2019> >>>> >>>> This e-mail is intended solely for the person to whom it is addressed >>>> and may contain confidential or privileged information. >>>> Any views or opinions presented in this e-mail are solely of the author >>>> and do not necessarily represent those of Extravision Ltd. >>>> >>>> ______________________________________________________________________ >>>> This email has been scanned by the Symantec Email Security.cloud >>>> service. >>>> For more information please visit http://www.symanteccloud.com >>>> ______________________________________________________________________ >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> Check out the vibrant tech community on one of the world's most >>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >>>> >>>> >>>> >>>> _______________________________________________ >>>> Hl7api-devel mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>>> >>>> >>>> >>>> ------------------------------------------------------------ >>>> ------------------ >>>> Check out the vibrant tech community on one of the world's most >>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >>>> _______________________________________________ >>>> Hl7api-devel mailing list >>>> Hl7...@li... >>>> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>>> >>>> >>> >>> >>> -- >>> >>> Med venlig hilsen / Kind regards >>> >>> *Jens Kristian Villadsen* >>> cand.polyt >>> >>> Stålhøjen 24 >>> 8240 Risskov >>> Denmark >>> >>> Mobile +4523373806 <23%2037%2038%2006> >>> jen...@gm... >>> >>> ______________________________________________________________________ >>> This email has been scanned by the Symantec Email Security.cloud service. >>> For more information please visit http://www.symanteccloud.com >>> ______________________________________________________________________ >>> >>> >>> >>> ______________________________________________________________________ >>> This email has been scanned by the Symantec Email Security.cloud service. >>> For more information please visit http://www.symanteccloud.com >>> ______________________________________________________________________ >>> >>> >>> ------------------------------------------------------------------------------ >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >>> >>> >>> >>> _______________________________________________ >>> Hl7api-devel mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>> >>> >>> >>> ------------------------------------------------------------ >>> ------------------ >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >>> _______________________________________________ >>> Hl7api-devel mailing list >>> Hl7...@li... >>> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>> >>> >> >> >> -- >> >> Med venlig hilsen / Kind regards >> >> *Jens Kristian Villadsen* >> cand.polyt >> >> Stålhøjen 24 >> 8240 Risskov >> Denmark >> >> Mobile +4523373806 <23%2037%2038%2006> >> jen...@gm... >> >> ______________________________________________________________________ >> This email has been scanned by the Symantec Email Security.cloud service. >> For more information please visit http://www.symanteccloud.com >> ______________________________________________________________________ >> >> >> >> ------------------------------------------------------------ >> ------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> _______________________________________________ >> Hl7api-devel mailing list >> Hl7...@li... >> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >> >> > > > -- > > Med venlig hilsen / Kind regards > > *Jens Kristian Villadsen* > cand.polyt > > Stålhøjen 24 > 8240 Risskov > Denmark > > Mobile +4523373806 <+45%2023%2037%2038%2006> > jen...@gm... > > ______________________________________________________________________ > This email has been scanned by the Symantec Email Security.cloud service. > For more information please visit http://www.symanteccloud.com > ______________________________________________________________________ > > > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > |
From: Tom C. <tc...@ex...> - 2017-08-03 11:00:42
|
Here's a patch against the current trunk that adds this support. Using a modified version of the send and receive example with a new build is easy: HL7Service server = context.newServer(4567, false, true); // port, tls, accept all My server is now able to receive these unsolicited ACKs Tom On 02/08/17 10:34, Jens Villadsen wrote: > Unsolicited ACK's are a bit weird to receive. While I can agree that > it would be nice if the behavior was configurable, it is currently not > the case (as you found out). I guess the case where it makes sense > would be in the case where your opposing system is supporting enhanced > acknowledgements, which HAPI does not really support (the case where > an acknowledgement is sent to you first as a transport ack, and then > an application ack). HAPI only supports a single ack to each message. > > On 2 August 2017 at 11:09, Tom Chiverton <tc...@ex... > <mailto:tc...@ex...>> wrote: > > I'm receiving this message from another server (I don't know why). > We're building an interface between our app and a HL7 server, and > the first step is just getting the HL7 messages off the wire and > storing them. > > The Reciever implementation is making a hard coded policy decision > that my application that's using it does not want to know about > some HL7 messages. > > This should be configurable, at the very least ? > > I've had a rough delve through the code, and it seems because > Reciever isn't an interface, you have to replace whole chunks of > other classes as well - I think I ended up with over a half dozen > cloned classes in my package because thing's were private or > package and so I couldn't extend them easily. > > Maybe it would be easier to have a setting (in HapiContext) about > what to do with them ? > > Tom > > On 02/08/17 10:02, Jens Villadsen wrote: >> Why would you send an unexpected ACK back to the server? >> >> On 31 July 2017 at 17:00, Tom Chiverton <tc...@ex... >> <mailto:tc...@ex...>> wrote: >> >> *AH HA*. >> >> There's a 3 year old bug with HAPI [1] where it throws away >> messages if they are unexpected replies. >> >> I don't see a way to replace the Receiver instance in use by >> SimpleServer ? >> >> Tom >> >> [1] >> https://sourceforge.net/p/hl7api/feature-requests/88/?limit=25 >> <https://sourceforge.net/p/hl7api/feature-requests/88/?limit=25> >> >> >> On 31/07/17 14:51, Tom Chiverton wrote: >>> >>> Hi, >>> >>> Sorry I wasn't clear, but further down my >>> RecivingApplication implementation I do have that : >>> >>> public Message processMessage(Message theMessage, >>> Map<String, Object> theMetadata) throws >>> ReceivingApplicationException, HL7Exception { >>> String encodedMessage = new >>> DefaultHapiContext().getPipeParser().encode(theMessage); >>> System.out.println("Received message:\n" + >>> encodedMessage + "\n\n"); >>> >>> } >>> >>> This never outputs. >>> >>> Tom >>> >>> >>> On 31/07/17 14:46, Jens Villadsen wrote: >>>> Take a look at the example found at >>>> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html >>>> <http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html> >>>> and >>>> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/ExampleReceiverApplication.html >>>> <http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/ExampleReceiverApplication.html> >>>> >>>> >>>> What you probably would like to look at is the "processMessage" >>>> >>>> >>>> >>>> >>>> On 31 July 2017 at 12:05, Tom Chiverton <tc...@ex... >>>> <mailto:tc...@ex...>> wrote: >>>> >>>> Given >>>> >>>> >>>> public class EvReceiverApplication implements >>>> ReceivingApplication { >>>> >>>> public boolean canProcess(Message theIn) { >>>> System.out.println("Received message: canProcess true"); >>>> return true; >>>> } >>>> >>>> .... >>>> >>>> >>>> I never see this output when a message is received. So >>>> it's like the receiver is not registered ? >>>> >>>> >>>> I am doing >>>> >>>> >>>> HL7Service server = context.newServer(port, useTls); >>>> >>>> ReceivingApplication handler = new EvReceiverApplication(); >>>> >>>> server.registerApplication("*", "*", handler); >>>> >>>> server.startAndWait(); >>>> >>>> >>>> Tom >>>> >>>> >>>> On 31/07/17 10:24, Tom Chiverton wrote: >>>>> >>>>> I have used >>>>> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html >>>>> <http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html> >>>>> >>>>> to build a simple app that should listen for all >>>>> messages, and echo them to the console ( >>>>> server.registerApplication("*", "*", handler); ). >>>>> >>>>> >>>>> However, although I get a line from the >>>>> connectionReceived method, and none from an output I >>>>> added to the exceptionHandler, I do not get anything >>>>> from my processMessage() code. >>>>> >>>>> >>>>> Java 1.8 on Ubuntu Server, with the latest HAPI >>>>> library. I can confirm I am getting a message >>>>> (admittedly it's MSA is "MSA|AA|245635223|Failure") >>>>> with a Wireshark packet capture. >>>>> >>>>> >>>>> Any ideas what could be up ? >>>>> >>>>> -- >>>>> *Tom Chiverton* >>>>> Lead Developer >>>>> e: tc...@ex... <mailto:tc...@ex...> >>>>> p: 0161 817 2922 >>>>> t: @extravision <http://www.twitter.com/extravision> >>>>> w: www.extravision.com <http://www.extravision.com/> >>>>> >>>>> Extravision - email worth seeing >>>>> <http://www.extravision.com/> >>>>> Registered in the UK at: First floor, Tomorrow, >>>>> MediaCityUK, Manchester, M50 2AB. >>>>> Company Reg No: 05017214 VAT: GB 824 5386 19 >>>>> <tel:24%2053%2086%2019> >>>>> >>>>> This e-mail is intended solely for the person to whom >>>>> it is addressed and may contain confidential or >>>>> privileged information. >>>>> Any views or opinions presented in this e-mail are >>>>> solely of the author and do not necessarily represent >>>>> those of Extravision Ltd. >>>>> >>>>> >>>>> ______________________________________________________________________ >>>>> This email has been scanned by the Symantec Email >>>>> Security.cloud service. >>>>> For more information please visit >>>>> http://www.symanteccloud.com >>>>> ______________________________________________________________________ >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> Check out the vibrant tech community on one of the world's most >>>>> engaging tech sites, Slashdot.org!http://sdm.link/slashdot >>>>> >>>>> >>>>> _______________________________________________ >>>>> Hl7api-devel mailing list >>>>> Hl7...@li... >>>>> <mailto:Hl7...@li...> >>>>> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>>>> <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> Check out the vibrant tech community on one of the >>>> world's most >>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >>>> _______________________________________________ >>>> Hl7api-devel mailing list >>>> Hl7...@li... >>>> <mailto:Hl7...@li...> >>>> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>>> <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> >>>> >>>> >>>> >>>> >>>> -- >>>> >>>> Med venlig hilsen / Kind regards >>>> >>>> *Jens Kristian Villadsen* >>>> cand.polyt >>>> >>>> Stålhøjen 24 >>>> 8240 Risskov >>>> Denmark >>>> >>>> Mobile +4523373806 <tel:23%2037%2038%2006> >>>> jen...@gm... >>>> <mailto:jen...@gm...> >>>> >>>> >>>> ______________________________________________________________________ >>>> This email has been scanned by the Symantec Email >>>> Security.cloud service. >>>> For more information please visit http://www.symanteccloud.com >>>> ______________________________________________________________________ >>> >>> >>> ______________________________________________________________________ >>> This email has been scanned by the Symantec Email >>> Security.cloud service. >>> For more information please visit http://www.symanteccloud.com >>> ______________________________________________________________________ >>> >>> >>> ------------------------------------------------------------------------------ >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, Slashdot.org!http://sdm.link/slashdot >>> >>> >>> _______________________________________________ >>> Hl7api-devel mailing list >>> Hl7...@li... >>> <mailto:Hl7...@li...> >>> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>> <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> >> >> >> ------------------------------------------------------------------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> _______________________________________________ >> Hl7api-devel mailing list >> Hl7...@li... >> <mailto:Hl7...@li...> >> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >> <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> >> >> >> >> >> -- >> >> Med venlig hilsen / Kind regards >> >> *Jens Kristian Villadsen* >> cand.polyt >> >> Stålhøjen 24 >> 8240 Risskov >> Denmark >> >> Mobile +4523373806 <tel:23%2037%2038%2006> >> jen...@gm... >> <mailto:jen...@gm...> >> >> >> ______________________________________________________________________ >> This email has been scanned by the Symantec Email Security.cloud >> service. >> For more information please visit http://www.symanteccloud.com >> ______________________________________________________________________ > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > <mailto:Hl7...@li...> > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> > > > > > -- > > Med venlig hilsen / Kind regards > > *Jens Kristian Villadsen* > cand.polyt > > Stålhøjen 24 > 8240 Risskov > Denmark > > Mobile +4523373806 > jen...@gm... <mailto:jen...@gm...> > > > ______________________________________________________________________ > This email has been scanned by the Symantec Email Security.cloud service. > For more information please visit http://www.symanteccloud.com > ______________________________________________________________________ |
From: Jens V. <jen...@gm...> - 2017-08-02 09:34:15
|
Unsolicited ACK's are a bit weird to receive. While I can agree that it would be nice if the behavior was configurable, it is currently not the case (as you found out). I guess the case where it makes sense would be in the case where your opposing system is supporting enhanced acknowledgements, which HAPI does not really support (the case where an acknowledgement is sent to you first as a transport ack, and then an application ack). HAPI only supports a single ack to each message. On 2 August 2017 at 11:09, Tom Chiverton <tc...@ex...> wrote: > I'm receiving this message from another server (I don't know why). We're > building an interface between our app and a HL7 server, and the first step > is just getting the HL7 messages off the wire and storing them. > > The Reciever implementation is making a hard coded policy decision that my > application that's using it does not want to know about some HL7 messages. > > This should be configurable, at the very least ? > > I've had a rough delve through the code, and it seems because Reciever > isn't an interface, you have to replace whole chunks of other classes as > well - I think I ended up with over a half dozen cloned classes in my > package because thing's were private or package and so I couldn't extend > them easily. > > Maybe it would be easier to have a setting (in HapiContext) about what to > do with them ? > Tom > > On 02/08/17 10:02, Jens Villadsen wrote: > > Why would you send an unexpected ACK back to the server? > > On 31 July 2017 at 17:00, Tom Chiverton <tc...@ex...> wrote: > >> *AH HA*. >> >> There's a 3 year old bug with HAPI [1] where it throws away messages if >> they are unexpected replies. >> >> I don't see a way to replace the Receiver instance in use by SimpleServer >> ? >> >> Tom >> >> [1] https://sourceforge.net/p/hl7api/feature-requests/88/?limit=25 >> >> On 31/07/17 14:51, Tom Chiverton wrote: >> >> Hi, >> >> Sorry I wasn't clear, but further down my RecivingApplication >> implementation I do have that : >> >> public Message processMessage(Message theMessage, Map<String, Object> >> theMetadata) throws ReceivingApplicationException, HL7Exception { >> String encodedMessage = new DefaultHapiContext().getPipePa >> rser().encode(theMessage); >> System.out.println("Received message:\n" + encodedMessage + >> "\n\n"); >> >> } >> >> This never outputs. >> >> Tom >> >> On 31/07/17 14:46, Jens Villadsen wrote: >> >> Take a look at the example found at http://hl7api.sourceforge.n >> et/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html and >> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples >> /ExampleReceiverApplication.html >> >> What you probably would like to look at is the "processMessage" >> >> >> >> >> On 31 July 2017 at 12:05, Tom Chiverton <tc...@ex...> wrote: >> >>> Given >>> >>> >>> public class EvReceiverApplication implements ReceivingApplication { >>> >>> public boolean canProcess(Message theIn) { >>> System.out.println("Received message: canProcess true"); >>> return true; >>> } >>> >>> .... >>> >>> >>> I never see this output when a message is received. So it's like the >>> receiver is not registered ? >>> >>> >>> I am doing >>> >>> >>> HL7Service server = context.newServer(port, useTls); >>> >>> ReceivingApplication handler = new EvReceiverApplication(); >>> >>> server.registerApplication("*", "*", handler); >>> >>> server.startAndWait(); >>> >>> Tom >>> >>> >>> On 31/07/17 10:24, Tom Chiverton wrote: >>> >>> I have used >>> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/Sen >>> dAndReceiveAMessage.html >>> >>> to build a simple app that should listen for all messages, and echo them >>> to the console ( server.registerApplication("*", "*", handler); ). >>> >>> >>> However, although I get a line from the connectionReceived method, and >>> none from an output I added to the exceptionHandler, I do not get anything >>> from my processMessage() code. >>> >>> >>> Java 1.8 on Ubuntu Server, with the latest HAPI library. I can confirm I >>> am getting a message (admittedly it's MSA is "MSA|AA|245635223|Failure") >>> with a Wireshark packet capture. >>> >>> >>> Any ideas what could be up ? >>> -- >>> *Tom Chiverton* >>> Lead Developer >>> e: tc...@ex... >>> p: 0161 817 2922 >>> t: @extravision <http://www.twitter.com/extravision> >>> w: www.extravision.com >>> [image: Extravision - email worth seeing] <http://www.extravision.com/> >>> Registered in the UK at: First floor, Tomorrow, MediaCityUK, >>> Manchester, M50 2AB. >>> Company Reg No: 05017214 VAT: GB 824 5386 19 <24%2053%2086%2019> >>> >>> This e-mail is intended solely for the person to whom it is addressed >>> and may contain confidential or privileged information. >>> Any views or opinions presented in this e-mail are solely of the author >>> and do not necessarily represent those of Extravision Ltd. >>> >>> ______________________________________________________________________ >>> This email has been scanned by the Symantec Email Security.cloud service. >>> For more information please visit http://www.symanteccloud.com >>> ______________________________________________________________________ >>> >>> >>> ------------------------------------------------------------------------------ >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >>> >>> >>> >>> _______________________________________________ >>> Hl7api-devel mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>> >>> >>> >>> ------------------------------------------------------------ >>> ------------------ >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >>> _______________________________________________ >>> Hl7api-devel mailing list >>> Hl7...@li... >>> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>> >>> >> >> >> -- >> >> Med venlig hilsen / Kind regards >> >> *Jens Kristian Villadsen* >> cand.polyt >> >> Stålhøjen 24 >> 8240 Risskov >> Denmark >> >> Mobile +4523373806 <23%2037%2038%2006> >> jen...@gm... >> >> ______________________________________________________________________ >> This email has been scanned by the Symantec Email Security.cloud service. >> For more information please visit http://www.symanteccloud.com >> ______________________________________________________________________ >> >> >> >> ______________________________________________________________________ >> This email has been scanned by the Symantec Email Security.cloud service. >> For more information please visit http://www.symanteccloud.com >> ______________________________________________________________________ >> >> >> ------------------------------------------------------------------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> >> >> >> _______________________________________________ >> Hl7api-devel mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/hl7api-devel >> >> >> >> ------------------------------------------------------------ >> ------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> _______________________________________________ >> Hl7api-devel mailing list >> Hl7...@li... >> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >> >> > > > -- > > Med venlig hilsen / Kind regards > > *Jens Kristian Villadsen* > cand.polyt > > Stålhøjen 24 > 8240 Risskov > Denmark > > Mobile +4523373806 <23%2037%2038%2006> > jen...@gm... > > ______________________________________________________________________ > This email has been scanned by the Symantec Email Security.cloud service. > For more information please visit http://www.symanteccloud.com > ______________________________________________________________________ > > > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > -- Med venlig hilsen / Kind regards *Jens Kristian Villadsen* cand.polyt Stålhøjen 24 8240 Risskov Denmark Mobile +4523373806 jen...@gm... |
From: Tom C. <tc...@ex...> - 2017-08-02 09:10:00
|
I'm receiving this message from another server (I don't know why). We're building an interface between our app and a HL7 server, and the first step is just getting the HL7 messages off the wire and storing them. The Reciever implementation is making a hard coded policy decision that my application that's using it does not want to know about some HL7 messages. This should be configurable, at the very least ? I've had a rough delve through the code, and it seems because Reciever isn't an interface, you have to replace whole chunks of other classes as well - I think I ended up with over a half dozen cloned classes in my package because thing's were private or package and so I couldn't extend them easily. Maybe it would be easier to have a setting (in HapiContext) about what to do with them ? Tom On 02/08/17 10:02, Jens Villadsen wrote: > Why would you send an unexpected ACK back to the server? > > On 31 July 2017 at 17:00, Tom Chiverton <tc...@ex... > <mailto:tc...@ex...>> wrote: > > *AH HA*. > > There's a 3 year old bug with HAPI [1] where it throws away > messages if they are unexpected replies. > > I don't see a way to replace the Receiver instance in use by > SimpleServer ? > > Tom > > [1] https://sourceforge.net/p/hl7api/feature-requests/88/?limit=25 > <https://sourceforge.net/p/hl7api/feature-requests/88/?limit=25> > > > On 31/07/17 14:51, Tom Chiverton wrote: >> >> Hi, >> >> Sorry I wasn't clear, but further down my RecivingApplication >> implementation I do have that : >> >> public Message processMessage(Message theMessage, Map<String, >> Object> theMetadata) throws ReceivingApplicationException, >> HL7Exception { >> String encodedMessage = new >> DefaultHapiContext().getPipeParser().encode(theMessage); >> System.out.println("Received message:\n" + encodedMessage >> + "\n\n"); >> >> } >> >> This never outputs. >> >> Tom >> >> >> On 31/07/17 14:46, Jens Villadsen wrote: >>> Take a look at the example found at >>> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html >>> <http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html> >>> and >>> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/ExampleReceiverApplication.html >>> <http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/ExampleReceiverApplication.html> >>> >>> >>> What you probably would like to look at is the "processMessage" >>> >>> >>> >>> >>> On 31 July 2017 at 12:05, Tom Chiverton <tc...@ex... >>> <mailto:tc...@ex...>> wrote: >>> >>> Given >>> >>> >>> public class EvReceiverApplication implements >>> ReceivingApplication { >>> >>> public boolean canProcess(Message theIn) { >>> System.out.println("Received message: canProcess true"); >>> return true; >>> } >>> >>> .... >>> >>> >>> I never see this output when a message is received. So it's >>> like the receiver is not registered ? >>> >>> >>> I am doing >>> >>> >>> HL7Service server = context.newServer(port, useTls); >>> >>> ReceivingApplication handler = new EvReceiverApplication(); >>> >>> server.registerApplication("*", "*", handler); >>> >>> server.startAndWait(); >>> >>> >>> Tom >>> >>> >>> On 31/07/17 10:24, Tom Chiverton wrote: >>>> >>>> I have used >>>> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html >>>> <http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html> >>>> >>>> to build a simple app that should listen for all messages, >>>> and echo them to the console ( >>>> server.registerApplication("*", "*", handler); ). >>>> >>>> >>>> However, although I get a line from the connectionReceived >>>> method, and none from an output I added to the >>>> exceptionHandler, I do not get anything from my >>>> processMessage() code. >>>> >>>> >>>> Java 1.8 on Ubuntu Server, with the latest HAPI library. I >>>> can confirm I am getting a message (admittedly it's MSA is >>>> "MSA|AA|245635223|Failure") with a Wireshark packet capture. >>>> >>>> >>>> Any ideas what could be up ? >>>> >>>> -- >>>> *Tom Chiverton* >>>> Lead Developer >>>> e: tc...@ex... <mailto:tc...@ex...> >>>> p: 0161 817 2922 >>>> t: @extravision <http://www.twitter.com/extravision> >>>> w: www.extravision.com <http://www.extravision.com/> >>>> >>>> Extravision - email worth seeing <http://www.extravision.com/> >>>> Registered in the UK at: First floor, Tomorrow, >>>> MediaCityUK, Manchester, M50 2AB. >>>> Company Reg No: 05017214 VAT: GB 824 5386 19 >>>> <tel:24%2053%2086%2019> >>>> >>>> This e-mail is intended solely for the person to whom it is >>>> addressed and may contain confidential or privileged >>>> information. >>>> Any views or opinions presented in this e-mail are solely >>>> of the author and do not necessarily represent those of >>>> Extravision Ltd. >>>> >>>> >>>> ______________________________________________________________________ >>>> This email has been scanned by the Symantec Email >>>> Security.cloud service. >>>> For more information please visit http://www.symanteccloud.com >>>> ______________________________________________________________________ >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> Check out the vibrant tech community on one of the world's most >>>> engaging tech sites, Slashdot.org!http://sdm.link/slashdot >>>> >>>> >>>> _______________________________________________ >>>> Hl7api-devel mailing list >>>> Hl7...@li... >>>> <mailto:Hl7...@li...> >>>> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>>> <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> >>> >>> >>> ------------------------------------------------------------------------------ >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >>> _______________________________________________ >>> Hl7api-devel mailing list >>> Hl7...@li... >>> <mailto:Hl7...@li...> >>> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>> <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> >>> >>> >>> >>> >>> -- >>> >>> Med venlig hilsen / Kind regards >>> >>> *Jens Kristian Villadsen* >>> cand.polyt >>> >>> Stålhøjen 24 >>> 8240 Risskov >>> Denmark >>> >>> Mobile +4523373806 <tel:23%2037%2038%2006> >>> jen...@gm... >>> <mailto:jen...@gm...> >>> >>> >>> ______________________________________________________________________ >>> This email has been scanned by the Symantec Email Security.cloud >>> service. >>> For more information please visit http://www.symanteccloud.com >>> ______________________________________________________________________ >> >> >> ______________________________________________________________________ >> This email has been scanned by the Symantec Email Security.cloud >> service. >> For more information please visit http://www.symanteccloud.com >> ______________________________________________________________________ >> >> >> ------------------------------------------------------------------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org!http://sdm.link/slashdot >> >> >> _______________________________________________ >> Hl7api-devel mailing list >> Hl7...@li... >> <mailto:Hl7...@li...> >> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >> <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > <mailto:Hl7...@li...> > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> > > > > > -- > > Med venlig hilsen / Kind regards > > *Jens Kristian Villadsen* > cand.polyt > > Stålhøjen 24 > 8240 Risskov > Denmark > > Mobile +4523373806 > jen...@gm... <mailto:jen...@gm...> > > > ______________________________________________________________________ > This email has been scanned by the Symantec Email Security.cloud service. > For more information please visit http://www.symanteccloud.com > ______________________________________________________________________ |
From: Jens V. <jen...@gm...> - 2017-08-02 09:02:55
|
Why would you send an unexpected ACK back to the server? On 31 July 2017 at 17:00, Tom Chiverton <tc...@ex...> wrote: > *AH HA*. > > There's a 3 year old bug with HAPI [1] where it throws away messages if > they are unexpected replies. > > I don't see a way to replace the Receiver instance in use by SimpleServer ? > > Tom > > [1] https://sourceforge.net/p/hl7api/feature-requests/88/?limit=25 > > On 31/07/17 14:51, Tom Chiverton wrote: > > Hi, > > Sorry I wasn't clear, but further down my RecivingApplication > implementation I do have that : > > public Message processMessage(Message theMessage, Map<String, Object> > theMetadata) throws ReceivingApplicationException, HL7Exception { > String encodedMessage = new DefaultHapiContext(). > getPipeParser().encode(theMessage); > System.out.println("Received message:\n" + encodedMessage + > "\n\n"); > > } > > This never outputs. > > Tom > > On 31/07/17 14:46, Jens Villadsen wrote: > > Take a look at the example found at http://hl7api.sourceforge. > net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html and > http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/ > ExampleReceiverApplication.html > > What you probably would like to look at is the "processMessage" > > > > > On 31 July 2017 at 12:05, Tom Chiverton <tc...@ex...> wrote: > >> Given >> >> >> public class EvReceiverApplication implements ReceivingApplication { >> >> public boolean canProcess(Message theIn) { >> System.out.println("Received message: canProcess true"); >> return true; >> } >> >> .... >> >> >> I never see this output when a message is received. So it's like the >> receiver is not registered ? >> >> >> I am doing >> >> >> HL7Service server = context.newServer(port, useTls); >> >> ReceivingApplication handler = new EvReceiverApplication(); >> >> server.registerApplication("*", "*", handler); >> >> server.startAndWait(); >> >> Tom >> >> >> On 31/07/17 10:24, Tom Chiverton wrote: >> >> I have used >> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/Sen >> dAndReceiveAMessage.html >> >> to build a simple app that should listen for all messages, and echo them >> to the console ( server.registerApplication("*", "*", handler); ). >> >> >> However, although I get a line from the connectionReceived method, and >> none from an output I added to the exceptionHandler, I do not get anything >> from my processMessage() code. >> >> >> Java 1.8 on Ubuntu Server, with the latest HAPI library. I can confirm I >> am getting a message (admittedly it's MSA is "MSA|AA|245635223|Failure") >> with a Wireshark packet capture. >> >> >> Any ideas what could be up ? >> -- >> *Tom Chiverton* >> Lead Developer >> e: tc...@ex... >> p: 0161 817 2922 >> t: @extravision <http://www.twitter.com/extravision> >> w: www.extravision.com >> [image: Extravision - email worth seeing] <http://www.extravision.com/> >> Registered in the UK at: First floor, Tomorrow, MediaCityUK, Manchester, >> M50 2AB. >> Company Reg No: 05017214 VAT: GB 824 5386 19 <24%2053%2086%2019> >> >> This e-mail is intended solely for the person to whom it is addressed and >> may contain confidential or privileged information. >> Any views or opinions presented in this e-mail are solely of the author >> and do not necessarily represent those of Extravision Ltd. >> >> ______________________________________________________________________ >> This email has been scanned by the Symantec Email Security.cloud service. >> For more information please visit http://www.symanteccloud.com >> ______________________________________________________________________ >> >> >> ------------------------------------------------------------------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> >> >> >> _______________________________________________ >> Hl7api-devel mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/hl7api-devel >> >> >> >> ------------------------------------------------------------ >> ------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> _______________________________________________ >> Hl7api-devel mailing list >> Hl7...@li... >> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >> >> > > > -- > > Med venlig hilsen / Kind regards > > *Jens Kristian Villadsen* > cand.polyt > > Stålhøjen 24 > 8240 Risskov > Denmark > > Mobile +4523373806 <23%2037%2038%2006> > jen...@gm... > > ______________________________________________________________________ > This email has been scanned by the Symantec Email Security.cloud service. > For more information please visit http://www.symanteccloud.com > ______________________________________________________________________ > > > > ______________________________________________________________________ > This email has been scanned by the Symantec Email Security.cloud service. > For more information please visit http://www.symanteccloud.com > ______________________________________________________________________ > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > > _______________________________________________ > Hl7api-devel mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > -- Med venlig hilsen / Kind regards *Jens Kristian Villadsen* cand.polyt Stålhøjen 24 8240 Risskov Denmark Mobile +4523373806 jen...@gm... |
From: Tom C. <tc...@ex...> - 2017-07-31 15:00:45
|
*AH HA*. There's a 3 year old bug with HAPI [1] where it throws away messages if they are unexpected replies. I don't see a way to replace the Receiver instance in use by SimpleServer ? Tom [1] https://sourceforge.net/p/hl7api/feature-requests/88/?limit=25 On 31/07/17 14:51, Tom Chiverton wrote: > > Hi, > > Sorry I wasn't clear, but further down my RecivingApplication > implementation I do have that : > > public Message processMessage(Message theMessage, Map<String, Object> > theMetadata) throws ReceivingApplicationException, HL7Exception { > String encodedMessage = new > DefaultHapiContext().getPipeParser().encode(theMessage); > System.out.println("Received message:\n" + encodedMessage + > "\n\n"); > > } > > This never outputs. > > Tom > > > On 31/07/17 14:46, Jens Villadsen wrote: >> Take a look at the example found at >> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html >> and >> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/ExampleReceiverApplication.html >> >> >> What you probably would like to look at is the "processMessage" >> >> >> >> >> On 31 July 2017 at 12:05, Tom Chiverton <tc...@ex... >> <mailto:tc...@ex...>> wrote: >> >> Given >> >> >> public class EvReceiverApplication implements ReceivingApplication { >> >> public boolean canProcess(Message theIn) { >> System.out.println("Received message: canProcess true"); >> return true; >> } >> >> .... >> >> >> I never see this output when a message is received. So it's like >> the receiver is not registered ? >> >> >> I am doing >> >> >> HL7Service server = context.newServer(port, useTls); >> >> ReceivingApplication handler = new EvReceiverApplication(); >> >> server.registerApplication("*", "*", handler); >> >> server.startAndWait(); >> >> >> Tom >> >> >> On 31/07/17 10:24, Tom Chiverton wrote: >>> >>> I have used >>> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html >>> <http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html> >>> >>> to build a simple app that should listen for all messages, and >>> echo them to the console ( server.registerApplication("*", "*", >>> handler); ). >>> >>> >>> However, although I get a line from the connectionReceived >>> method, and none from an output I added to the exceptionHandler, >>> I do not get anything from my processMessage() code. >>> >>> >>> Java 1.8 on Ubuntu Server, with the latest HAPI library. I can >>> confirm I am getting a message (admittedly it's MSA is >>> "MSA|AA|245635223|Failure") with a Wireshark packet capture. >>> >>> >>> Any ideas what could be up ? >>> >>> -- >>> *Tom Chiverton* >>> Lead Developer >>> e: tc...@ex... <mailto:tc...@ex...> >>> p: 0161 817 2922 >>> t: @extravision <http://www.twitter.com/extravision> >>> w: www.extravision.com <http://www.extravision.com/> >>> >>> Extravision - email worth seeing <http://www.extravision.com/> >>> Registered in the UK at: First floor, Tomorrow, MediaCityUK, >>> Manchester, M50 2AB. >>> Company Reg No: 05017214 VAT: GB 824 5386 19 >>> <tel:24%2053%2086%2019> >>> >>> This e-mail is intended solely for the person to whom it is >>> addressed and may contain confidential or privileged information. >>> Any views or opinions presented in this e-mail are solely of the >>> author and do not necessarily represent those of Extravision Ltd. >>> >>> >>> ______________________________________________________________________ >>> This email has been scanned by the Symantec Email Security.cloud >>> service. >>> For more information please visit http://www.symanteccloud.com >>> ______________________________________________________________________ >>> >>> >>> ------------------------------------------------------------------------------ >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, Slashdot.org!http://sdm.link/slashdot >>> >>> >>> _______________________________________________ >>> Hl7api-devel mailing list >>> Hl7...@li... >>> <mailto:Hl7...@li...> >>> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >>> <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> >> >> >> ------------------------------------------------------------------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> _______________________________________________ >> Hl7api-devel mailing list >> Hl7...@li... >> <mailto:Hl7...@li...> >> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >> <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> >> >> >> >> >> -- >> >> Med venlig hilsen / Kind regards >> >> *Jens Kristian Villadsen* >> cand.polyt >> >> Stålhøjen 24 >> 8240 Risskov >> Denmark >> >> Mobile +4523373806 >> jen...@gm... <mailto:jen...@gm...> >> >> >> ______________________________________________________________________ >> This email has been scanned by the Symantec Email Security.cloud service. >> For more information please visit http://www.symanteccloud.com >> ______________________________________________________________________ > > > ______________________________________________________________________ > This email has been scanned by the Symantec Email Security.cloud service. > For more information please visit http://www.symanteccloud.com > ______________________________________________________________________ > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel |
From: Tom C. <tc...@ex...> - 2017-07-31 13:51:32
|
Hi, Sorry I wasn't clear, but further down my RecivingApplication implementation I do have that : public Message processMessage(Message theMessage, Map<String, Object> theMetadata) throws ReceivingApplicationException, HL7Exception { String encodedMessage = new DefaultHapiContext().getPipeParser().encode(theMessage); System.out.println("Received message:\n" + encodedMessage + "\n\n"); } This never outputs. Tom On 31/07/17 14:46, Jens Villadsen wrote: > Take a look at the example found at > http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html > and > http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/ExampleReceiverApplication.html > > > What you probably would like to look at is the "processMessage" > > > > > On 31 July 2017 at 12:05, Tom Chiverton <tc...@ex... > <mailto:tc...@ex...>> wrote: > > Given > > > public class EvReceiverApplication implements ReceivingApplication { > > public boolean canProcess(Message theIn) { > System.out.println("Received message: canProcess true"); > return true; > } > > .... > > > I never see this output when a message is received. So it's like > the receiver is not registered ? > > > I am doing > > > HL7Service server = context.newServer(port, useTls); > > ReceivingApplication handler = new EvReceiverApplication(); > > server.registerApplication("*", "*", handler); > > server.startAndWait(); > > > Tom > > > On 31/07/17 10:24, Tom Chiverton wrote: >> >> I have used >> http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html >> <http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html> >> >> to build a simple app that should listen for all messages, and >> echo them to the console ( server.registerApplication("*", "*", >> handler); ). >> >> >> However, although I get a line from the connectionReceived >> method, and none from an output I added to the exceptionHandler, >> I do not get anything from my processMessage() code. >> >> >> Java 1.8 on Ubuntu Server, with the latest HAPI library. I can >> confirm I am getting a message (admittedly it's MSA is >> "MSA|AA|245635223|Failure") with a Wireshark packet capture. >> >> >> Any ideas what could be up ? >> >> -- >> *Tom Chiverton* >> Lead Developer >> e: tc...@ex... <mailto:tc...@ex...> >> p: 0161 817 2922 >> t: @extravision <http://www.twitter.com/extravision> >> w: www.extravision.com <http://www.extravision.com/> >> >> Extravision - email worth seeing <http://www.extravision.com/> >> Registered in the UK at: First floor, Tomorrow, MediaCityUK, >> Manchester, M50 2AB. >> Company Reg No: 05017214 VAT: GB 824 5386 19 >> <tel:24%2053%2086%2019> >> >> This e-mail is intended solely for the person to whom it is >> addressed and may contain confidential or privileged information. >> Any views or opinions presented in this e-mail are solely of the >> author and do not necessarily represent those of Extravision Ltd. >> >> >> ______________________________________________________________________ >> This email has been scanned by the Symantec Email Security.cloud >> service. >> For more information please visit http://www.symanteccloud.com >> ______________________________________________________________________ >> >> >> ------------------------------------------------------------------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org!http://sdm.link/slashdot >> >> >> _______________________________________________ >> Hl7api-devel mailing list >> Hl7...@li... >> <mailto:Hl7...@li...> >> https://lists.sourceforge.net/lists/listinfo/hl7api-devel >> <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > <mailto:Hl7...@li...> > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > <https://lists.sourceforge.net/lists/listinfo/hl7api-devel> > > > > > -- > > Med venlig hilsen / Kind regards > > *Jens Kristian Villadsen* > cand.polyt > > Stålhøjen 24 > 8240 Risskov > Denmark > > Mobile +4523373806 > jen...@gm... <mailto:jen...@gm...> > > > ______________________________________________________________________ > This email has been scanned by the Symantec Email Security.cloud service. > For more information please visit http://www.symanteccloud.com > ______________________________________________________________________ |
From: Jens V. <jen...@gm...> - 2017-07-31 13:46:54
|
Take a look at the example found at http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html and http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/ExampleReceiverApplication.html What you probably would like to look at is the "processMessage" On 31 July 2017 at 12:05, Tom Chiverton <tc...@ex...> wrote: > Given > > > public class EvReceiverApplication implements ReceivingApplication { > > public boolean canProcess(Message theIn) { > System.out.println("Received message: canProcess true"); > return true; > } > > .... > > > I never see this output when a message is received. So it's like the > receiver is not registered ? > > > I am doing > > > HL7Service server = context.newServer(port, useTls); > > ReceivingApplication handler = new EvReceiverApplication(); > > server.registerApplication("*", "*", handler); > > server.startAndWait(); > > Tom > > > On 31/07/17 10:24, Tom Chiverton wrote: > > I have used > http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/ > SendAndReceiveAMessage.html > > to build a simple app that should listen for all messages, and echo them > to the console ( server.registerApplication("*", "*", handler); ). > > > However, although I get a line from the connectionReceived method, and > none from an output I added to the exceptionHandler, I do not get anything > from my processMessage() code. > > > Java 1.8 on Ubuntu Server, with the latest HAPI library. I can confirm I > am getting a message (admittedly it's MSA is "MSA|AA|245635223|Failure") > with a Wireshark packet capture. > > > Any ideas what could be up ? > -- > *Tom Chiverton* > Lead Developer > e: tc...@ex... > p: 0161 817 2922 > t: @extravision <http://www.twitter.com/extravision> > w: www.extravision.com > [image: Extravision - email worth seeing] <http://www.extravision.com/> > Registered in the UK at: First floor, Tomorrow, MediaCityUK, Manchester, > M50 2AB. > Company Reg No: 05017214 VAT: GB 824 5386 19 <24%2053%2086%2019> > > This e-mail is intended solely for the person to whom it is addressed and > may contain confidential or privileged information. > Any views or opinions presented in this e-mail are solely of the author > and do not necessarily represent those of Extravision Ltd. > > ______________________________________________________________________ > This email has been scanned by the Symantec Email Security.cloud service. > For more information please visit http://www.symanteccloud.com > ______________________________________________________________________ > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > > _______________________________________________ > Hl7api-devel mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > -- Med venlig hilsen / Kind regards *Jens Kristian Villadsen* cand.polyt Stålhøjen 24 8240 Risskov Denmark Mobile +4523373806 jen...@gm... |
From: Tom C. <tc...@ex...> - 2017-07-31 10:05:45
|
Given public class EvReceiverApplication implements ReceivingApplication { public boolean canProcess(Message theIn) { System.out.println("Received message: canProcess true"); return true; } .... I never see this output when a message is received. So it's like the receiver is not registered ? I am doing HL7Service server = context.newServer(port, useTls); ReceivingApplication handler = new EvReceiverApplication(); server.registerApplication("*", "*", handler); server.startAndWait(); Tom On 31/07/17 10:24, Tom Chiverton wrote: > > I have used > http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html > > to build a simple app that should listen for all messages, and echo > them to the console ( server.registerApplication("*", "*", handler); ). > > > However, although I get a line from the connectionReceived method, and > none from an output I added to the exceptionHandler, I do not get > anything from my processMessage() code. > > > Java 1.8 on Ubuntu Server, with the latest HAPI library. I can confirm > I am getting a message (admittedly it's MSA is > "MSA|AA|245635223|Failure") with a Wireshark packet capture. > > > Any ideas what could be up ? > > -- > *Tom Chiverton* > Lead Developer > e: tc...@ex... <mailto:tc...@ex...> > p: 0161 817 2922 > t: @extravision <http://www.twitter.com/extravision> > w: www.extravision.com <http://www.extravision.com/> > > Extravision - email worth seeing <http://www.extravision.com/> > Registered in the UK at: First floor, Tomorrow, MediaCityUK, > Manchester, M50 2AB. > Company Reg No: 05017214 VAT: GB 824 5386 19 > > This e-mail is intended solely for the person to whom it is addressed > and may contain confidential or privileged information. > Any views or opinions presented in this e-mail are solely of the > author and do not necessarily represent those of Extravision Ltd. > > > ______________________________________________________________________ > This email has been scanned by the Symantec Email Security.cloud service. > For more information please visit http://www.symanteccloud.com > ______________________________________________________________________ > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel |
From: Tom C. <tc...@ex...> - 2017-07-31 09:49:16
|
I have used http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/SendAndReceiveAMessage.html to build a simple app that should listen for all messages, and echo them to the console ( server.registerApplication("*", "*", handler); ). However, although I get a line from the connectionReceived method, and none from an output I added to the exceptionHandler, I do not get anything from my processMessage() code. Java 1.8 on Ubuntu Server, with the latest HAPI library. I can confirm I am getting a message (admittedly it's MSA is "MSA|AA|245635223|Failure") with a Wireshark packet capture. Any ideas what could be up ? -- *Tom Chiverton* Lead Developer e: tc...@ex... <mailto:tc...@ex...> p: 0161 817 2922 t: @extravision <http://www.twitter.com/extravision> w: www.extravision.com <http://www.extravision.com/> Extravision - email worth seeing <http://www.extravision.com/> Registered in the UK at: First floor, Tomorrow, MediaCityUK, Manchester, M50 2AB. Company Reg No: 05017214 VAT: GB 824 5386 19 This e-mail is intended solely for the person to whom it is addressed and may contain confidential or privileged information. Any views or opinions presented in this e-mail are solely of the author and do not necessarily represent those of Extravision Ltd. |
From: Mike M. <mi...@th...> - 2017-07-31 02:51:43
|
I need to apologise for my post about a broken PreParser with an invalid MSH-2. Debugging through the PreParser code I have noticed that it does indeed throw an exception when you call getFields() with the invalid MSH-2. I think my original conclusion about the parser failure was due to the lazy way in which I am using the PreParser. In my original code the PipeParser is always used, now the PreParser is only being triggered when a field is being accessed, my original test case was passing after the preParser was put in place because the original test case was invalid as it did not cause the PreParser to be used. If you create a simple test with the sample message you do indeed get an HL7 Exception thrown (message is not useful: "Parse Failed"), this happens because the 4 msh characters are read, and a test is performed to confirm that the next character is the field separator (in my example this fails as '&' is found instead of '|'). Sorry for the false alarm. Kind regards, -Mike On 28 July 2017 at 14:38, Mike Mills <mi...@th...> wrote: > I have been attempting to convert our routing code to use the more > performant PreParser over a full PipeParser. > > I have found this message to throw an exception in the pipe parser, but no > exception is thrown with the PreParser: > > MSH|^~\\&|||||20161024182512||ORM^O01|1624|T|2.4||||||8859/1 > > > Note the \\ in the MSH-2, this was an actual case in our production system > and is one of the edge tests we perform. > > When I moved to the PreParser this test failed as it no longer throws the > HL7Exception: > > ca.uhn.hl7v2.HL7Exception: Invalid or incomplete encoding characters - > MSH-2 is ^~\\& > > > Surely the same exception should be generated by the PreParser? > > -Mike > |
From: Mike M. <mi...@th...> - 2017-07-28 04:39:07
|
I have been attempting to convert our routing code to use the more performant PreParser over a full PipeParser. I have found this message to throw an exception in the pipe parser, but no exception is thrown with the PreParser: MSH|^~\\&|||||20161024182512||ORM^O01|1624|T|2.4||||||8859/1 Note the \\ in the MSH-2, this was an actual case in our production system and is one of the edge tests we perform. When I moved to the PreParser this test failed as it no longer throws the HL7Exception: ca.uhn.hl7v2.HL7Exception: Invalid or incomplete encoding characters - MSH-2 is ^~\\& Surely the same exception should be generated by the PreParser? -Mike |
From: Mike M. <mi...@th...> - 2017-07-19 21:42:34
|
Craig, This is the code we use when creating a hapi context. Note that we typically lock in a structures version via the CanonicalModelClasFactory System.setProperty("ca.uhn.hl7v2.model.varies.default_obx2_type", "ST"); System.setProperty("ca.uhn.hl7v2.model.varies.invalid_obx2_type", "ST"); HapiContext hapiContext = new DefaultHapiContext(); hapiContext.setModelClassFactory(new CanonicalModelClassFactory("2.4")); hapiContext.setValidationRuleBuilder(new NoValidationBuilder()); ParserConfiguration parserConfig = new ParserConfiguration(); parserConfig.setEscaping(new EscapingQhImpl()); hapiContext.setParserConfiguration(parserConfig); As you point out we ignore all validation so we avoid issues with Phone numbers and other formats but we have worked with that limitation for several years. -Mike On 20 July 2017 at 00:51, McClendon, Craig <cra...@ac...> wrote: > Thanks for the reply Mike. > > Yes in this case my goal is to have generic-ish code that can handle > multiple v2 versions. So I’m “up-converting” to v26 using the > CanonicalModelClassFactory. So far this works well except in cases where > items have been withdrawn in v26 which fail validation. > > > > I tried to play around with getting the RuleBindings from the context to > remove this particular rule, but was unable to find this one, and am not > familiar enough with the underlying implementation to know where to find > it. > > i.e., I tried finding this rule with these calls but no luck: > > List<RuleBinding<PrimitiveTypeRule>> rules = ((ValidationContextImpl) > context.getValidationContext()).getPrimitiveRuleBindings(); > > List<RuleBinding<MessageRule>> rules2 = ((ValidationContextImpl) > context.getValidationContext()).getMessageRuleBindings(); > > List<RuleBinding<EncodingRule>> rules3 = ((ValidationContextImpl) > context.getValidationContext()).getEncodingRuleBindings(); > > > > > > But perhaps what I could do is use the DefaultHapiContext to parse the > message to achieve version-specific validation, then parse it again with a > context using CanonicalModelClassFactory with validation disabled to get > the data “de-serialized” and work with. It will obviously not be efficient, > but at least it’s a work-around. > > > > -Craig > > > > *From:* Mike Mills > > *Sent:* Tuesday, July 18, 2017 9:21 PM > *To:* McClendon, Craig <cra...@ac...> > *Subject:* [External] Re: [HAPI-devel] backward compatible message > validation with CanonicalModelClassFactory > > > > Craig, > > > > If you are not using custom message structures then you can simply use the > DefaultHapiContext and PipeParser to parse a message. > > > > The default PipeParser will use MSH-12 to locate the correct message class. > > > > You would need to have the HapiStructures 2.3 and 2.6 on your classpath, > but this code should parse your message and return a class of the > appropriate structure. > > > > The only issues is if you want to have code that processes both 2.3 and > 2.6 messages in the same way. > > > > In those cases you need to create your own custom structure that can deal > with your case. > > > > If you stick to HapiStructures then this code should process your message: > > > > Message msg = new DefaultHapiContext().getPipeParser().parse( .... your > 2.3 message string here ... ); > > > > The underlying java type of the msg variable will change depending on the > value of MSH-12. > > > > -Mike > > > > ------------------------------ > > 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. > ____________________________________________________________ > __________________________ > > www.accenture.com > |
From: Mike M. <mi...@th...> - 2017-07-19 21:18:33
|
Christian, Thanks for the info on PID3 lists when using the PreParser, I was wondering what your thoughts on doing the following to get around the PID3 list. I use the getFields() of preParser to get more PID 3 repeats than we could possibly have. In our case, 250 was determined to be quite adequate to cover all the possible patient identifiers (base on the number of facilities in our system multiplied by 2, then rounded up to nearest 10) Even when getting 250 fields (most of which return null) we are still massively quicker than a full parse. Can you think of any issues when taking this approach? Cheers, -Mike On 30 June 2017 at 15:11, Christian Ohr <chr...@gm...> wrote: > No, > > going into the details of the message requires fully parsing it to the > internal model. The normal parser also cares about all the variability and > character escaping rules defined in HL7v2, that’s why it takes more time > and resources. > > > > Christian > > > > > > *Von: *Mike Mills <mi...@th...> > *Gesendet: *Freitag, 30. Juni 2017 03:59 > *An: *Christian Ohr <chr...@gm...> > *Betreff: *Re: [HAPI-devel] Hapi parse performance. > > > > Christian, > > > > Is there a way to deal with PID 3 lists when using the PreParser. > > > > There does not seem to be a way to get a count of the list, nor a way to > return the whole pid3 value. > > > > Any suggestions? > > > > Kind regards > > > > Mike > > > > On 30 Jun. 2017 4:38 am, "Christian Ohr" <chr...@gm...> wrote: > > Hi Mike, > > check if http://hl7api.sourceforge.net/base/apidocs/ca/uhn/hl7v2/ > preparser/PreParser.html would help in your case, when you just need to > extract a single field. > > cheers > Christian > > Am 29.06.2017 um 03:17 schrieb Mike Mills: > > Hi, > > > > Are the any efforts being made to improve the performance of parsing an > hl7 message? > > > > I am considering dropping parsing of messages using hapi because of the > CPU load and memory requirements. > > > > It seems like Hapi parses like a DOM parser as it goes though the entire > message. > > > > It would be good if the message was lazily parsed so that no parsing > occurs until a teaser.get call is made, or an accessor called on the > concrete message object returned from parse(). When the terser path is > executed only the required segment/group/field/sub fields are processed to > retrieve the desired value. > > > > That way, if we wanted just the MSH9-2 the copy expense of parsing an > entire message is not required. > > > > My initial performance testing indicates that the JVM dropped from 10% CPU > usage with Hapi to 3% CPU usage when using string.split(). > > > > Are there efforts being made to address the performance of Hapi? > > > > Kind regards. > > > > Mike > > > > > > > > ------------------------------------------------------------------------------ > > Check out the vibrant tech community on one of the world's most > > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > > _______________________________________________ > > Hl7api-devel mailing list > > Hl7...@li... > > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > > > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > > |
From: Mike M. <mi...@th...> - 2017-07-19 21:10:39
|
As part of fuzz testing it has been identified that strange combinations of MSH-9 can cause some quite unexpected behaviour. In this example a message defined as ADT^M02 was routed as an MFN^M02 due to routing only checking MSH-9-2 and ended up being processed as a V24.GenericMessage. So my questions are: 1, should you always route a message based on the MSH-9-1 & MSH-9-2? 2, Is it possible to get the pipe parser / hapi context to throw an exception if a message is received that does not have a valid message class. (note we use our own custom ModelClassFactory so we could trap the failed lookup at that point) Thanks -Mike |
From: Jens V. <jen...@gm...> - 2017-07-19 19:42:38
|
Sounds like you should have a look at https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-create-api-app What you then need to provide is HAPI wrapped in some REST-like API Den 19. jul. 2017 20.44 skrev "David Lancaster via Hl7api-devel" < hl7...@li...>: > Hello - > > Newcomer to this listserv, so this is my first post - please be gentle > with me! > > Has anyone embedded/encapsulated the HAPI V.2 and/or HAPI FHIR parsers > within Microsoft Azure Logic Apps? I'd like to know if Azure (.NET > framework) has any kind of issue calling a Java-based API. > > Thanks in advance for your responses!! > > David Lancaster > dav...@ya... > 402-321-4559 > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > |
From: David L. <dav...@ya...> - 2017-07-19 18:43:04
|
Hello - Newcomer to this listserv, so this is my first post - please be gentle with me! Has anyone embedded/encapsulated the HAPI V.2 and/or HAPI FHIR parsers within Microsoft Azure Logic Apps? I'd like to know if Azure (.NET framework) has any kind of issue calling a Java-based API. Thanks in advance for your responses!! David Lancaster dav...@ya...402-321-4559 |
From: McClendon, C. <cra...@ac...> - 2017-07-19 14:51:54
|
Thanks for the reply Mike. Yes in this case my goal is to have generic-ish code that can handle multiple v2 versions. So I’m “up-converting” to v26 using the CanonicalModelClassFactory. So far this works well except in cases where items have been withdrawn in v26 which fail validation. I tried to play around with getting the RuleBindings from the context to remove this particular rule, but was unable to find this one, and am not familiar enough with the underlying implementation to know where to find it. i.e., I tried finding this rule with these calls but no luck: List<RuleBinding<PrimitiveTypeRule>> rules = ((ValidationContextImpl)context.getValidationContext()).getPrimitiveRuleBindings(); List<RuleBinding<MessageRule>> rules2 = ((ValidationContextImpl)context.getValidationContext()).getMessageRuleBindings(); List<RuleBinding<EncodingRule>> rules3 = ((ValidationContextImpl)context.getValidationContext()).getEncodingRuleBindings(); But perhaps what I could do is use the DefaultHapiContext to parse the message to achieve version-specific validation, then parse it again with a context using CanonicalModelClassFactory with validation disabled to get the data “de-serialized” and work with. It will obviously not be efficient, but at least it’s a work-around. -Craig From: Mike Mills Sent: Tuesday, July 18, 2017 9:21 PM To: McClendon, Craig <cra...@ac...> Subject: [External] Re: [HAPI-devel] backward compatible message validation with CanonicalModelClassFactory Craig, If you are not using custom message structures then you can simply use the DefaultHapiContext and PipeParser to parse a message. The default PipeParser will use MSH-12 to locate the correct message class. You would need to have the HapiStructures 2.3 and 2.6 on your classpath, but this code should parse your message and return a class of the appropriate structure. The only issues is if you want to have code that processes both 2.3 and 2.6 messages in the same way. In those cases you need to create your own custom structure that can deal with your case. If you stick to HapiStructures then this code should process your message: Message msg = new DefaultHapiContext().getPipeParser().parse( .... your 2.3 message string here ... ); The underlying java type of the msg variable will change depending on the value of MSH-12. -Mike ________________________________ 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. ______________________________________________________________________________________ www.accenture.com |
From: McClendon, C. <cra...@ac...> - 2017-07-19 01:09:59
|
I need to support multiple versions of v2 messages, so I am using a CanonicalModelClassFactory set to version 2.6 to parse all messages as described here: http://hl7api.sourceforge.net/xref/ca/uhn/hl7v2/examples/HandlingMultipleVersions.html My problem now comes when parsing older messages that use WITHDRAWN elements, like PID-13, XTN-1. The HAPI parser throws an exception when it is populated: ca.uhn.hl7v2.model.DataTypeException: ca.uhn.hl7v2.validation.ValidationException: Validation failed: Primitive value '5551212' requires to be empty because it is withdrawn from the current HL7 version and should not be used at PID-13 The message I am parsing in this case does have "2.3" in the MSH-12. So it appears the validator is not accounting for the version there. I can turn validation completely off to work around this: parser.setValidationContext(new NoValidation()); And I suppose I could manipulate the message prior to parsing it. But I would prefer a different solution. Either: 1) Is there is a way to get the validation to "honor" the MSH-12 version for the rules it enforces? Or 2) is there a way to disable specific rules without turning off validation entirely? Thanks! ________________________________ 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. ______________________________________________________________________________________ www.accenture.com |
From: Christian O. <chr...@gm...> - 2017-06-29 18:37:47
|
Hi Mike, check if http://hl7api.sourceforge.net/base/apidocs/ca/uhn/hl7v2/preparser/PreParser.html would help in your case, when you just need to extract a single field. cheers Christian Am 29.06.2017 um 03:17 schrieb Mike Mills: > Hi, > > Are the any efforts being made to improve the performance of parsing > an hl7 message? > > I am considering dropping parsing of messages using hapi because of > the CPU load and memory requirements. > > It seems like Hapi parses like a DOM parser as it goes though the > entire message. > > It would be good if the message was lazily parsed so that no parsing > occurs until a teaser.get call is made, or an accessor called on the > concrete message object returned from parse(). When the terser path is > executed only the required segment/group/field/sub fields are > processed to retrieve the desired value. > > That way, if we wanted just the MSH9-2 the copy expense of parsing an > entire message is not required. > > My initial performance testing indicates that the JVM dropped from 10% > CPU usage with Hapi to 3% CPU usage when using string.split(). > > Are there efforts being made to address the performance of Hapi? > > Kind regards. > > Mike > > > > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > > > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel |
From: Mike M. <mi...@th...> - 2017-06-29 01:17:39
|
Hi, Are the any efforts being made to improve the performance of parsing an hl7 message? I am considering dropping parsing of messages using hapi because of the CPU load and memory requirements. It seems like Hapi parses like a DOM parser as it goes though the entire message. It would be good if the message was lazily parsed so that no parsing occurs until a teaser.get call is made, or an accessor called on the concrete message object returned from parse(). When the terser path is executed only the required segment/group/field/sub fields are processed to retrieve the desired value. That way, if we wanted just the MSH9-2 the copy expense of parsing an entire message is not required. My initial performance testing indicates that the JVM dropped from 10% CPU usage with Hapi to 3% CPU usage when using string.split(). Are there efforts being made to address the performance of Hapi? Kind regards. Mike |
From: Mike M. <mi...@th...> - 2017-06-24 04:12:44
|
James, You could automate the XP to Linux step with Jenkins. Use a remote agent on the XP machine for the first part, the the output of that build can be automatically fed as the input of the Linux build. You could also run a VM on the Linux box with an XP image of you want to save on hardware. Mike On 24 Jun. 2017 6:25 am, "James Agnew" <jam...@gm...> wrote: > A new version of HAPI HL7v2 has been released! This new version includes a > number of bugfixes, as well as new message structures for the following > versions of HL7v2: v2.7, v2.8, and v2.8.1. > > Note that we're not currently able to release structures for v2.7.1 > because of weirdness in the HL7 database for that version. It may well be > an issue on our end, but I have so far not been able to figure it out. > > In addition, we have changed the TestPanel distribution so that it is now > distributed as a simple executable JAR with some scripts to start it. > > I want to thank everyone who has been waiting for this release for their > patience. I have stated on the mailing list quite a few times over the last > few years that a new release was imminent, and it never materialized. The > basic explanation for this is that building a new release has become quite > a laborious process that requires quite a lot of hand-holding. > > A bit of insight into the HAPI HL7v2 build process: The basic trouble is > that building the structures is only possible on a Windows XP system > because of the way it works. Essentially the build requires an ODBC driver > for an Access MDB file (this is how the HL7 databases are distributed) and > this driver was discontinued after Windows XP. Unfortunately the Javac > compiler is unwilling to compile the large number of files that make up a > structure JAR on Windows XP, so the process now involves building > structures on XP, then copying them into a build on Linux and compiling. > This whole thing really needs refactoring, but this would be a huge project > and isn't something we have capacity to take on at this point. > > As an additional note, we have now migrated the project from Sourceforge > over to GitHub: https://github.com/hapifhir/hapi-hl7v2. The new project > website can be found at:https://hapifhir.github.io/hapi-hl7v2. As a side > note, we are now going to refer to this project as "HAPI HL7v2" and the > FHIR version of HAPI as "HAPI FHIR". Hopefully this will remove some > confusion, as these are completely separate libraries with separate release > cycles. > > Thanks to everyone who contributed to this release. As always, check the > the Changelog <https://hapifhir.github.io/hapi-hl7v2/changes-report.html> for > details about what's new. > > > Cheers, > > James > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Hl7api-devel mailing list > Hl7...@li... > https://lists.sourceforge.net/lists/listinfo/hl7api-devel > > |
From: James A. <jam...@gm...> - 2017-06-23 20:24:43
|
A new version of HAPI HL7v2 has been released! This new version includes a number of bugfixes, as well as new message structures for the following versions of HL7v2: v2.7, v2.8, and v2.8.1. Note that we're not currently able to release structures for v2.7.1 because of weirdness in the HL7 database for that version. It may well be an issue on our end, but I have so far not been able to figure it out. In addition, we have changed the TestPanel distribution so that it is now distributed as a simple executable JAR with some scripts to start it. I want to thank everyone who has been waiting for this release for their patience. I have stated on the mailing list quite a few times over the last few years that a new release was imminent, and it never materialized. The basic explanation for this is that building a new release has become quite a laborious process that requires quite a lot of hand-holding. A bit of insight into the HAPI HL7v2 build process: The basic trouble is that building the structures is only possible on a Windows XP system because of the way it works. Essentially the build requires an ODBC driver for an Access MDB file (this is how the HL7 databases are distributed) and this driver was discontinued after Windows XP. Unfortunately the Javac compiler is unwilling to compile the large number of files that make up a structure JAR on Windows XP, so the process now involves building structures on XP, then copying them into a build on Linux and compiling. This whole thing really needs refactoring, but this would be a huge project and isn't something we have capacity to take on at this point. As an additional note, we have now migrated the project from Sourceforge over to GitHub: https://github.com/hapifhir/hapi-hl7v2. The new project website can be found at:https://hapifhir.github.io/hapi-hl7v2. As a side note, we are now going to refer to this project as "HAPI HL7v2" and the FHIR version of HAPI as "HAPI FHIR". Hopefully this will remove some confusion, as these are completely separate libraries with separate release cycles. Thanks to everyone who contributed to this release. As always, check the the Changelog <https://hapifhir.github.io/hapi-hl7v2/changes-report.html> for details about what's new. Cheers, James |
From: Jens V. <jen...@gm...> - 2017-06-16 16:51:47
|
As long as the PDF is encoded in eg. Base64 (to avoid protocol matches) it is possible, yes Den 16. jun. 2017 18.37 skrev "Andrew West" <aw...@tr...>: Is the HAPI object-oriented HL7 2.x parser for Java, able to parse embedded data in HL7 ORU (Pathology Results) messages? An example, would be lab systems sending enhanced pathology results (ORU Messages) which include embedded data PDF files placed in the OBX segments. Respectfully, *Andrew West, PMP®* *Healthcare Business Analyst* The information transmitted is intended only for the person or entity to which it is addressed and may contain CONFIDENTIAL material. If you receive this material/information in error, please contact the sender and delete or destroy the material/information. ------------------------------------------------------------ ------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Hl7api-devel mailing list Hl7...@li... https://lists.sourceforge.net/lists/listinfo/hl7api-devel |
From: Andrew W. <aw...@tr...> - 2017-06-16 16:36:18
|
Is the HAPI object-oriented HL7 2.x parser for Java, able to parse embedded data in HL7 ORU (Pathology Results) messages? An example, would be lab systems sending enhanced pathology results (ORU Messages) which include embedded data PDF files placed in the OBX segments. Respectfully, Andrew West, PMP® Healthcare Business Analyst The information transmitted is intended only for the person or entity to which it is addressed and may contain CONFIDENTIAL material. If you receive this material/information in error, please contact the sender and delete or destroy the material/information. |