I'm new to Pentaho and trying to utilize the HL7 MLLP Input job. I didn't see much in the way of information online - both within Pentaho or in general, but I was able to find a presentation that had an image of a job that used it. From that I was able create a job that called a transformation that can take an HL7 message and push that data into a file.
However, I wasn't sure how I would actually use this in a production environment where I had to receive HL7 messages all the time. Typically, in other HL7 systems, I would have have a connection that remains open to the source system and would receive HL7 messages whenever they send them. The connection would never close. With Pentaho, the job runs, waits for the message(s), processes the message(s), and then finishes and closes the connection. If I try to use the "Repeat" feature, where it would restart after that specified interval, the job fails after the first successful time it process the message. I get the following error the next time the job runs.
2014/12/12 18:59:17 - HL7 MLLP Input - ERROR (version 5.2.0.0, build 1 from 2014-09-30_19-48-28 by buildguy) : Unexpected error
2014/12/12 18:59:17 - HL7 MLLP Input - ERROR (version 5.2.0.0, build 1 from 2014-09-30_19-48-28 by buildguy) : java.lang.NullPointerException
2014/12/12 18:59:17 - HL7 MLLP Input - at org.pentaho.di.job.entries.hl7mllpin.HL7MLLPInput.execute(HL7MLLPInput.java:163)
2014/12/12 18:59:17 - HL7 MLLP Input - at org.pentaho.di.job.Job.execute(Job.java:716)
2014/12/12 18:59:17 - HL7 MLLP Input - at org.pentaho.di.job.Job.execute(Job.java:859)
2014/12/12 18:59:17 - HL7 MLLP Input - at org.pentaho.di.job.Job.execute(Job.java:532)
2014/12/12 18:59:17 - HL7 MLLP Input - at org.pentaho.di.job.Job.run(Job.java:424)
I am sending an ACK back successfully, but again, I am unsure this is even the correct way to implement this.
BTW, I am having no problems if I process the HL7 message from a file - only as a stream.
If someone could comment how they are using the HL7 MLLP Input/Acknowledge or what the best practices are, I would appreciate it.
I have attached my job and transformation files.
Thx.
However, I wasn't sure how I would actually use this in a production environment where I had to receive HL7 messages all the time. Typically, in other HL7 systems, I would have have a connection that remains open to the source system and would receive HL7 messages whenever they send them. The connection would never close. With Pentaho, the job runs, waits for the message(s), processes the message(s), and then finishes and closes the connection. If I try to use the "Repeat" feature, where it would restart after that specified interval, the job fails after the first successful time it process the message. I get the following error the next time the job runs.
2014/12/12 18:59:17 - HL7 MLLP Input - ERROR (version 5.2.0.0, build 1 from 2014-09-30_19-48-28 by buildguy) : Unexpected error
2014/12/12 18:59:17 - HL7 MLLP Input - ERROR (version 5.2.0.0, build 1 from 2014-09-30_19-48-28 by buildguy) : java.lang.NullPointerException
2014/12/12 18:59:17 - HL7 MLLP Input - at org.pentaho.di.job.entries.hl7mllpin.HL7MLLPInput.execute(HL7MLLPInput.java:163)
2014/12/12 18:59:17 - HL7 MLLP Input - at org.pentaho.di.job.Job.execute(Job.java:716)
2014/12/12 18:59:17 - HL7 MLLP Input - at org.pentaho.di.job.Job.execute(Job.java:859)
2014/12/12 18:59:17 - HL7 MLLP Input - at org.pentaho.di.job.Job.execute(Job.java:532)
2014/12/12 18:59:17 - HL7 MLLP Input - at org.pentaho.di.job.Job.run(Job.java:424)
I am sending an ACK back successfully, but again, I am unsure this is even the correct way to implement this.
BTW, I am having no problems if I process the HL7 message from a file - only as a stream.
If someone could comment how they are using the HL7 MLLP Input/Acknowledge or what the best practices are, I would appreciate it.
I have attached my job and transformation files.
Thx.