Thanks so much for getting back to me. Here’s the class being run from a Junit 
test. I’ve included the output below. The message is faithfully cast for 
structure but the values are not there. Perhaps the factory is creating an 
empty one. I know this is really rudimentary stuff so I appreciate your looking 
at it. As I said, the examples for V2.2 work fine and in fact this code worked 
with an ORU_01 message I found in the ether. 

This message parses nicely in the Hapi Test panel


import ca.uhn.hl7v2.DefaultHapiContext;
import ca.uhn.hl7v2.HL7Exception;
import ca.uhn.hl7v2.HapiContext;
import ca.uhn.hl7v2.model.Message;
import ca.uhn.hl7v2.*;
import ca.uhn.hl7v2.model.v25.message.ORU_R01;
import ca.uhn.hl7v2.model.v25.datatype.XPN;
import ca.uhn.hl7v2.model.v25.message.ADT_A02;
import ca.uhn.hl7v2.model.v23.message.ADT_A08;
import ca.uhn.hl7v2.model.v25.message.ADT_A01;
import ca.uhn.hl7v2.model.v25.segment.MSH;
import ca.uhn.hl7v2.model.v25.segment.PID;
import ca.uhn.hl7v2.parser.CanonicalModelClassFactory;
import ca.uhn.hl7v2.parser.EncodingNotSupportedException;
import ca.uhn.hl7v2.parser.Parser;
import ca.uhn.hl7v2.parser.PipeParser;

/**
* Created with IntelliJ IDEA.
* User: Hugh
* Date: 4/15/13
* Time: 11:36 AM
* To change this template use File | Settings | File Templates.
*/
public class HL725Parser {

    public HL725Parser(){


    }

    public void parseMessage () {
         String msg1 = 
"MSH|^~\\&|SOARF|HMC|||201304110916||ADT^A02|4c73eeb1-85ee-439f-91d9-747cb20d82ed|P|2.5||2|||||||\n"
 +
                 "EVN|A02|201304110916||XFR|B0QZ_LGILLE|201304110914|939\n" +
                 
"PID|1||4125315^^^900000^PN^^20130411~401768^^^14^MR^^20130411||Smith^Boy 
Gloria^^^^^L^^^20130411~Smith^Baby 
Gloria^^^^^L^^^20130411@20130411||201304110706|M||H|500 MARY SUE 
DR^^ATLANTA^GA^30721^USA^M^^White^^^20130411||^PRN^PH^^1^706^2295221||EN|S|NRL|1000038688^^^14^VCD^^20130411|||1000038533^^^14^VCD^^20130410~100039469^^^14^VN^^20130410~227922^^^900000^PN^^20021011~169813^^^14^MR^^20021011~255892163^^^900001^SS^^20130410|HIS||N|1|||||N|N||2013|||||\n"
 +
                 "PD1||||||||N||||||^L|||||||\n" +
                 "PV1|1|I|NCN^NCN IN53^IN5301^939|Newborn||NCN^NCN 
BEDS^NURS03^939|600458^Whitman^Jeffeory^H^^^^^11^L^^^PRN^^^^19560901~421805573^^^^^^^^900001^^^^HPSS~100^^^^^^^^900000^^^^DN~D41371^^^^^^^^900002^^^^UPIN~010588^^^^^^^^1788^^^^PRN~1720074198^^^^^^^^900004^^^^NPI~022667^^^^^^^^13^^^^LN~AW1082697^^^^^^^^900001^^^^DEA|||NUR|||N|Born
 in 
hospital||||IP|100039638^^^14^VN^^20130411|Mcaid|||||||||||||||||||939|||||201304110706|||||||V|\n"
 +
                 "PV2|||^Newborn 
(Vaginal)||||~~~~false||||||||N||||||Y||Inpatient^L^17^^^900000^XX^^ 
~^^1528056066^^^900004^NPI^^ |Checked in|Newborn||||||N|||||Y||||Nursery 
Newborn|||||||\n" +
                 "ROL||UC|AT|600458^Whitman^Jeffeory^H^^^^^11                   
           ^L^^^PRN^^^^19560901~421805573^^^^^^^^900001                         
 ^^^^HPSS~100^^^^^^^^900000                          
^^^^DN~D41371^^^^^^^^900002                          
^^^^UPIN~010588^^^^^^^^1788                            
^^^^PRN~1720074198^^^^^^^^900004                          
^^^^NPI~022667^^^^^^^^13                              
^^^^LN~AW1082697^^^^^^^^900001                          
^^^^DEA|201304110706||||Phys|||^WPN^PH^^0^706^8762130^0~^ORN^FX^^0^706^8762168\n"
 +
                 "OBX|1|NM|9272-6^Apgar 1^LN||0||||||||||||\n" +
                 "OBX|2|NM|9274-2^Apgar 5^LN||0||||||||||||\n" +
                 "PDA||||||N|||N\n" +
                 
"ZPV|||||||||||||||||||||||||||||||||||||||||||||||||\"\"||||||||||||^^mostCurrEncTypeCd^mostCurrEncTypeCd^IP||||||||100039638^^No
 SCD^14^ZAVN^^20130411||201304110706|\n";



         HapiContext context = new DefaultHapiContext();
         Parser p = context.getGenericParser();
         Message hl7msg;

         try {

             hl7msg = p.parse(msg1);
         } catch (EncodingNotSupportedException e) {
             e.printStackTrace();
             return;
         } catch (HL7Exception e) {
             e.printStackTrace();
             return;
         }

        //ORU_R01 adtMsg = (ORU_R01)hl7msg;
        ADT_A02 adtMsg = (ADT_A02)hl7msg;
        PID pid  = adtMsg.getPID();
        XPN [] names = adtMsg.getPID().getPatientName();

        ca.uhn.hl7v2.model.v25.segment.MSH msh = adtMsg.getMSH();
        System.out.println("patientName length: " + 
pid.getPatientName().length);

        String msgTrigger = msh.getMessageType().getTriggerEvent().getValue();
        System.out.println("messageTrigger: " + msgTrigger);



    }

}


And here’s the output 

"C:\Program Files\Java\jdk1.6.0_23\bin\java" 
-agentlib:jdwp=transport=dt_socket,address=127.0.0.1:4263,suspend=y,server=n 
-Dfile.encoding=UTF-8 -classpath "C:\Program Files (x86)\JetBrains\IntelliJ 
IDEA 12.1\lib\idea_rt.jar;C:\Program Files (x86)\JetBrains\IntelliJ IDEA 
12.1\plugins\junit\lib\junit-rt.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\alt-rt.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\alt-string.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\charsets.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\deploy.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\javaws.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\jce.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\jsse.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\management-agent.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\plugin.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\resources.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\rt.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\ext\dnsns.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\ext\localedata.jar;C:\Program 
Files\Java\jdk1.6.0_23\jre\lib\ext\sunjce_provider.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\out\production\ZipiParser;C:\Program
 Files (x86)\JetBrains\IntelliJ IDEA 
12.1\lib\junit-4.10.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\hapi-base-2.1.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\hapi-examples-2.1.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\hapi-hl7overhttp-2.1.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\hapi-structures-v21-2.1.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\hapi-structures-v22-2.1.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\hapi-structures-v23-2.1.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\hapi-structures-v24-2.1.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\hapi-structures-v25-2.1.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\hapi-structures-v26-2.1.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\hapi-structures-v231-2.1.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\hapi-structures-v251-2.1.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\log4j-1.2.17.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\slf4j-api-1.6.6.jar;C:\Users\Hugh\Documents\dev\Roku\ZipiParser\lib\slf4j-log4j12-1.6.6.jar"
 com.intellij.rt.execution.junit.JUnitStarter -ideVersion5 -junit3 
mediavision.com.test.HL7MessageShuttleTest,testHL725Parser
Connected to the target VM, address: '127.0.0.1:4263', transport: 'socket'
log4j:WARN No appenders could be found for logger 
(ca.uhn.hl7v2.parser.DefaultModelClassFactory).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more 
info.
patientName length: 0
messageTrigger: A02
Disconnected from the target VM, address: '127.0.0.1:4263', transport: 'socket'
------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
Hl7api-devel mailing list
Hl7api-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/hl7api-devel

Reply via email to