Announcement

Collapse

Mirth Connect 3.12.0 Released!

Mirth Connect 3.12.0 is now available as an appliance update and on our GitHub page. This release includes database performance improvements, improves visual HL7 representation, message pruning, keystore handling, PDF generation, community contributions, and fixes several security vulnerabilities. This release also contains many improvements to commercial extensions. See the release notes for the list of fixes and updates.

Download | See What's New | Upgrade Guide | Release Notes

For discussion on this release, see this thread.
See more
See less

System is trying to turn field data into XML

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • System is trying to turn field data into XML

    I have a fairly stripped down inbound channel that simply writes to a file.

    I am getting errors as the thing parses the HL7 and incorrectly decides that data in one of the elements is an XML tag.

    Do I have something set wrong such that it takes inbound data and treats it as code? Seems like odd behavior.

    ERROR-300: Transformer error
    ERROR MESSAGE: Error evaluating transformer
    com.webreach.mirth.model.converters.SerializerExce ption: org.xml.sax.SAXParseException: The element type "NEW" must be terminated by the matching end-tag "</NEW>".
    The particular element it is getting looks like this. And it is no doubt choking on the "<NEW>" in IN1:14 00254 AUTHORIZATION INFORMATION.

    IN1|1|DC||DEAN CARE 00274|P O BOX 56099^^MADISON^WI^53705| \
    |(800)279-1301|0014578|ST COLETTA OF WI||STCOLSCH \
    |||<NEW>||TESTBURLAP^GEORGE^J^^^|SP||||||||||||||| ||||36345789101||||| \
    |FT^1 FULL-TIME EMPLOYED|||
    My transform is empty.
    <com.webreach.mirth.model.Transformer>
    <steps/>
    <inboundTemplate>&#x0D;</inboundTemplate>
    <outboundTemplate></outboundTemplate>
    <inboundProtocol>HL7V2</inboundProtocol>
    <outboundProtocol>HL7V2</outboundProtocol>
    <inboundProperties>
    <property name="useStrictParser">false</property>
    <property name="convertLFtoCR">true</property>
    <property name="useStrictValidation">false</property>
    </inboundProperties>
    <outboundProperties>
    <property name="convertLFtoCR">true</property>
    </outboundProperties>
    </com.webreach.mirth.model.Transformer>

  • #2
    Re:System is trying to turn field data into XML

    Check that your inbound data type on the channel summary page is set to HL7 v2.x. Also make sure that the template data type values are also properly set, according to however you want to transform the message (look at transformer Message Templates data type for both the source and destinations). Hope this helps.
    Gerald Bortis | Chief Information Officer | Mirth Corporation

    Comment


    • #3
      Re:System is trying to turn field data into XML

      It is/was set to HL7 v2.x

      Template data types are both HL7 v2.x. Inbound is greyed out though.

      I don't think I am doing any transforming. I am trying to start out with getting the data in and sending as close to the same as I can manage to a file. Transforming and routing will come soon enough but so far I can't reliably receive what I think is valid HL7 data.


      I did add a message sample to the inbound and outbound message templates. That is all I did and that did seem to stop another error I was getting that I hadn't mentioned because I hadn't deciphered what it was complaining about. This is the error:

      ERROR-300: Transformer error
      ERROR MESSAGE: Error evaluating transformer
      com.webreach.mirth.model.converters.SerializerExce ption: org.xml.sax.SAXParseException: The content of elements must consist of well-formed character data or markup.

      Which seems to have been caused by extra < or > in a data element.

      That apparently has been fixed by adding the sample message in both templates. Apparently I don't have enough grasp of what a temple is doing for me.

      unresisted use with pain<3/10
      now resolves to
      unresisted use with pain&lt;3/10

      But the data element that is <NEW> still fails with "The element type "NEW" must be terminated by the matching end-tag "</NEW>""

      On a broader scope...

      Is there any repository of channels and whatever other parts are involved that do the routine things? The one that is failing was the LLP2File imported. And that one was really the only generic one.

      All the others are fairly special purpose and the 'HL7 Filter.xml' fails on import with "Invalid filter file".

      The file looks pretty close to a filter that was exported and so far I don't know enough to read what's wrong except to note if I paste the <script> into a "good" filter, it turns into a "bad" filter.

      My basic goal at this point is to get an inbound feed, send all out to one of two outbound feeds, send filtered messages to the other. And to make it only a little more complicated I want to add a missing data element - for example a static hospital identifier - to all the messages as they pass through. I know how to do this in the context of a Cloverleaf engine and I know it is possible with Mirth but, while getting there is half the fun, I guess I need a hint.

      Comment

      Working...
      X