web stats
LLP local loopback?? - Mirth Community

Go Back   Mirth Community > Mirth Connect > Support

Reply
 
Thread Tools Display Modes
  #1  
Old 10-27-2006, 12:01 PM
jbartels jbartels is offline
Mirth Guru
 
Join Date: Oct 2006
Posts: 719
jbartels is on a distinguished road
Default LLP local loopback??

I am evaluating Mirth for my company. We need to ensure that it can handle the traffic load we expect and also the SOAP support in 1.2 . I hope to contribute to the project by testing, documenting, and benchmarking Mirth.

My capacity testing process is:
1. An application builds some testing data and fills a table.
2. The same application slowly reads data from that table and puts it into an output-queue table.
3. Mirth reads that table and sends the HL7 data out on an LLP connection
4. Another Mirth channel is listening for LLP connections
5. The 2nd channel writes to a different database

The final test will be done with two Mirth servers running on two seperate machines. For now I am testing the test and making sure that my testing model is working.

Right now I am having some trouble getting a local loopback LLP connection established. I am able to read from my 'output queue' and write to files, but it doesn't seem to be able to make the LLP connection and send data over TCP.

I get the following exception:
ERROR org.mule.impl.DefaultExceptionStrategy:
************************************************** ******************************

Message : TypeError: error: Unexpected character encountered (lex state
3): '|' (<cmd>#1) (org.mozilla.javascript.EcmaError)
Type : org.mule.umo.transformer.TransformerException
Code : 64999
Transformer : Transformer{name='10_destination_1', returnClass=false, retur
nClass=false, sourceTypes=[]}
JavaDoc : http://mule.codehaus.org/docs/apidoc...umo/transforme
r/TransformerException.html
************************************************** ******************************

My first channel (read from DB to LLP Sender):
Code:
<com.webreach.mirth.model.Channel>
<id>9</id>
<name>mirth_abuse_A</name>
<description/>
<enabled>true</enabled>
<version>1.1.0</version>
<revision>0</revision>
<direction>OUTBOUND</direction>
<mode>ROUTER</mode>
?
	<sourceConnector>
<name>sourceConnector</name>
?
	<properties>
<property name="pollingFrequency" value="5000"/>
<property name="username" value="XXXXXXXX"/>
<property name="DataType" value="Database Reader"/>
<property name="useAck" value="1"/>
<property name="URL" value="jdbc:jtds:sqlserver://XXXXXXXX:1434/mirth_abuse;domain=XXXX"/>
<property name="query" value="SELECT pk, field_1, field_2, field_3 FROM queue WHERE been_read = 0"/>
<property name="password" value="XXXXXX"/>
<property name="host" value="query"/>
<property name="driver" value="net.sourceforge.jtds.jdbc.Driver"/>
<property name="ack" value="UPDATE queue SET been_read = 1 WHERE pk = ${pk}"/>
</properties>
?
	<transformer>
<steps/>
</transformer>
?
	<filter>
<rules/>
</filter>
<transportName>Database Reader</transportName>
</sourceConnector>
?
	<destinationConnectors>
?
	<com.webreach.mirth.model.Connector>
<name>Destination 2</name>
?
	<properties>
<property name="tcpProtocolClassName" value="org.mule.providers.tcp.protocols.LlpProtocol"/>
<property name="messageEnd" value="0x1C"/>
<property name="keepSendSocketOpen" value="0"/>
<property name="bufferSize" value="65536"/>
<property name="port" value="6661"/>
<property name="sendTimeout" value="5000"/>
<property name="messageStart" value="0x0B"/>
<property name="maxRetryCount" value="50"/>
<property name="charEncoding" value="hex"/>
<property name="DataType" value="LLP Sender"/>
<property name="recordSeparator" value="0x0D"/>
<property name="host" value="127.0.0.1"/>
</properties>
?
	<transformer>
?
	<steps>
?
	<com.webreach.mirth.model.Step>
<sequenceNumber>0</sequenceNumber>
<name>New Step</name>
?
	<script>
hl7_xml['PID']['PID.11']['XAD.1'].text()[0] = msg['pk'].text()[0];
</script>
<type>HL7 Message Builder</type>
?
	<data class="map">
?
	<entry>
<string>Mapping</string>
<string>msg['pk']</string>
</entry>
?
	<entry>
<string>Variable</string>
<string>hl7_xml['PID']['PID.11']['XAD.1']</string>
</entry>
</data>
</com.webreach.mirth.model.Step>
?
	<com.webreach.mirth.model.Step>
<sequenceNumber>1</sequenceNumber>
<name>New Step</name>
?
	<script>
hl7_xml['PID']['PID.11']['XAD.3'].text()[0] = msg['field_1'].text()[0];
</script>
<type>HL7 Message Builder</type>
?
	<data class="map">
?
	<entry>
<string>Mapping</string>
<string>msg['field_1']</string>
</entry>
?
	<entry>
<string>Variable</string>
<string>hl7_xml['PID']['PID.11']['XAD.3']</string>
</entry>
</data>
</com.webreach.mirth.model.Step>
?
	<com.webreach.mirth.model.Step>
<sequenceNumber>2</sequenceNumber>
<name>New Step</name>
?
	<script>
hl7_xml['PID']['PID.11']['XAD.4'].text()[0] = msg['field_2'].text()[0];
</script>
<type>HL7 Message Builder</type>
?
	<data class="map">
?
	<entry>
<string>Mapping</string>
<string>msg['field_2']</string>
</entry>
?
	<entry>
<string>Variable</string>
<string>hl7_xml['PID']['PID.11']['XAD.4']</string>
</entry>
</data>
</com.webreach.mirth.model.Step>
?
	<com.webreach.mirth.model.Step>
<sequenceNumber>3</sequenceNumber>
<name>New Step</name>
?
	<script>
hl7_xml['PID']['PID.11']['XAD.5'].text()[0] = msg['field_3'].text()[0];
</script>
<type>HL7 Message Builder</type>
?
	<data class="map">
?
	<entry>
<string>Mapping</string>
<string>msg['field_3']</string>
</entry>
?
	<entry>
<string>Variable</string>
<string>hl7_xml['PID']['PID.11']['XAD.5']</string>
</entry>
</data>
</com.webreach.mirth.model.Step>
</steps>
?
	<template>
MSH|^~\&|AccMgr|1|||20060404090746||ADT^A04|6035910|D|2.3.1
EVN|A04|20060404090742
PID|1|800888^^^AccMgr^PN|999945682^^^AccMgr^MR^1||TEST^PATIENT MF||19570414|M||W|21 PALM MANOR^^EAST SYRACUSE^NY^130570000^^M|31|||E|M||6635130^^^AccMgr^VN^1|000987655|||2|||||NOT A VETERAN|||N
PD1||||1335^ALCOTT^KAREN^^^^^^AccMgr^^^^CI|||I
NK1|1|TEST^MARGARET|W|21 PALM MANOR^^EAST SYRACUSE^NY^130570000|||Y
PV1|1|E|ED^^^1|1|||1281^MARKHAM^JOSEPH^^^^^^AccMgr^^^^CI|1281^MARKHAM^JOSEPH^^^^^^AccMgr^^^^CI||ED||||7|S|||62|6635130^^^AccMgr^VN^1|865^SP KOPP|||||||||||||||||||1||A|||20060404090500
PV2||^NO||||||20060404090500||||||||||||||||||||||||||||||S
DG1|1||^HEADACHE|HEADACHE||A|||||||||0
GT1|1|382582|TEST^PATIENT MF||21 PALM MANOR^^EAST SYRACUSE^NY^130570000|||19570414|M|||000987655||||||||11
IN1|1|SELF PAY NYS|734|SELF PAY NYS|||||||||||5|TEST^PATIENT MF|1|19570414|21 PALM MANOR^^EAST SYRACUSE^NY^130570000|||||||||||||||||||||||11|M||||||382582
IN1|2|SELF PAY|705|SELFPAY|||||||||||5||1
IN2|1||000987655
</template>
</transformer>
?
	<filter>
<rules/>
?
	<template>
MSH|^~\&|AccMgr|1|||20060404090746||ADT^A04|6035910|D|2.3.1
EVN|A04|20060404090742
PID|1|800888^^^AccMgr^PN|999945682^^^AccMgr^MR^1||TEST^PATIENT MF||19570414|M||W|21 PALM MANOR^^EAST SYRACUSE^NY^130570000^^M|31|||E|M||6635130^^^AccMgr^VN^1|000987655|||2|||||NOT A VETERAN|||N
PD1||||1335^ALCOTT^KAREN^^^^^^AccMgr^^^^CI|||I
NK1|1|TEST^MARGARET|W|21 PALM MANOR^^EAST SYRACUSE^NY^130570000|||Y
PV1|1|E|ED^^^1|1|||1281^MARKHAM^JOSEPH^^^^^^AccMgr^^^^CI|1281^MARKHAM^JOSEPH^^^^^^AccMgr^^^^CI||ED||||7|S|||62|6635130^^^AccMgr^VN^1|865^SP KOPP|||||||||||||||||||1||A|||20060404090500
PV2||^NO||||||20060404090500||||||||||||||||||||||||||||||S
DG1|1||^HEADACHE|HEADACHE||A|||||||||0
GT1|1|382582|TEST^PATIENT MF||21 PALM MANOR^^EAST SYRACUSE^NY^130570000|||19570414|M|||000987655||||||||11
IN1|1|SELF PAY NYS|734|SELF PAY NYS|||||||||||5|TEST^PATIENT MF|1|19570414|21 PALM MANOR^^EAST SYRACUSE^NY^130570000|||||||||||||||||||||||11|M||||||382582
IN1|2|SELF PAY|705|SELFPAY|||||||||||5||1
IN2|1||000987655
</template>
</filter>
<transportName>LLP Sender</transportName>
</com.webreach.mirth.model.Connector>
</destinationConnectors>
?
	<properties>
<property name="initialState" value="stopped"/>
<property name="recv_xml_encoded" value="false"/>
</properties>
</com.webreach.mirth.model.Channel>
My second channel (LLP Listener to DB):

Code:
<com.webreach.mirth.model.Channel>
<id>10</id>
<name>mirth_abuse_B</name>
<description/>
<enabled>true</enabled>
<version>1.1.0</version>
<revision>0</revision>
<direction>INBOUND</direction>
<mode>ROUTER</mode>
?
	<sourceConnector>
<name>sourceConnector</name>
?
	<properties>
<property name="tcpProtocolClassName" value="org.mule.providers.tcp.protocols.LlpProtocol"/>
<property name="messageEnd" value="0x1C"/>
<property name="sendACK" value="1"/>
<property name="keepSendSocketOpen" value="0"/>
<property name="bufferSize" value="65536"/>
<property name="port" value="6661"/>
<property name="messageStart" value="0x0B"/>
<property name="charEncoding" value="hex"/>
<property name="DataType" value="LLP Listener"/>
<property name="recordSeparator" value="0x0D"/>
<property name="receiveTimeout" value="5000"/>
<property name="host" value="127.0.0.1"/>
</properties>
?
	<transformer>
<steps/>
</transformer>
?
	<filter>
<rules/>
</filter>
<transportName>LLP Listener</transportName>
</sourceConnector>
?
	<destinationConnectors>
?
	<com.webreach.mirth.model.Connector>
<name>Destination 1</name>
?
	<properties>
<property name="URL" value="jdbc:jtds:sqlserver://XXXXXX/tXXXXXXXX;domain=XXXXXXXX;ssl=request"/>
<property name="DataType" value="Database Writer"/>
<property name="password" value="XXXXXXXX"/>
<property name="host" value="query"/>
<property name="driver" value="net.sourceforge.jtds.jdbc.Driver"/>
<property name="query" value="INSERT INTO mirth_test_output VALUES (${pk}, '${field_1}', '${field_2}', '${field_3}')"/>
<property name="username" value="XXXXXXXXXX"/>
</properties>
?
	<transformer>
?
	<steps>
?
	<com.webreach.mirth.model.Step>
<sequenceNumber>0</sequenceNumber>
<name>New Step</name>
?
	<script>
localMap.put('pk', hl7_xml['PID']['PID.11']['XAD.1']);
</script>
<type>Mapper</type>
?
	<data class="map">
?
	<entry>
<string>Mapping</string>
<string>hl7_xml['PID']['PID.11']['XAD.1']</string>
</entry>
?
	<entry>
<string>Variable</string>
<string>pk</string>
</entry>
</data>
</com.webreach.mirth.model.Step>
?
	<com.webreach.mirth.model.Step>
<sequenceNumber>1</sequenceNumber>
<name>New Step</name>
?
	<script>
localMap.put('field_1', hl7_xml['PID']['PID.11']['XAD.3']);
</script>
<type>Mapper</type>
?
	<data class="map">
?
	<entry>
<string>Mapping</string>
<string>hl7_xml['PID']['PID.11']['XAD.3']</string>
</entry>
?
	<entry>
<string>Variable</string>
<string>field_1</string>
</entry>
</data>
</com.webreach.mirth.model.Step>
?
	<com.webreach.mirth.model.Step>
<sequenceNumber>2</sequenceNumber>
<name>New Step</name>
?
	<script>
localMap.put('field_2', hl7_xml['PID']['PID.11']['XAD.4']);
</script>
<type>Mapper</type>
?
	<data class="map">
?
	<entry>
<string>Mapping</string>
<string>hl7_xml['PID']['PID.11']['XAD.4']</string>
</entry>
?
	<entry>
<string>Variable</string>
<string>field_2</string>
</entry>
</data>
</com.webreach.mirth.model.Step>
?
	<com.webreach.mirth.model.Step>
<sequenceNumber>3</sequenceNumber>
<name>New Step</name>
?
	<script>
localMap.put('field_3', hl7_xml['PID']['PID.11']['XAD.5']);
</script>
<type>Mapper</type>
?
	<data class="map">
?
	<entry>
<string>Mapping</string>
<string>hl7_xml['PID']['PID.11']['XAD.5']</string>
</entry>
?
	<entry>
<string>Variable</string>
<string>field_3</string>
</entry>
</data>
</com.webreach.mirth.model.Step>
</steps>
?
	<template>
MSH|^~\&|AccMgr|1|||20060404090746||ADT^A04|6035910|D|2.3.1
EVN|A04|20060404090742
PID|1|800888^^^AccMgr^PN|999945682^^^AccMgr^MR^1||TEST^PATIENT MF||19570414|M||W|3^^field_1_3^field_2_3^field_3_3^^M|31|||E|M||6635130^^^AccMgr^VN^1|000987655|||2|||||NOT A VETERAN|||N
PD1||||1335^ALCOTT^KAREN^^^^^^AccMgr^^^^CI|||I
NK1|1|TEST^MARGARET|W|21 PALM MANOR^^EAST SYRACUSE^NY^130570000|||Y
PV1|1|E|ED^^^1|1|||1281^MARKHAM^JOSEPH^^^^^^AccMgr^^^^CI|1281^MARKHAM^JOSEPH^^^^^^AccMgr^^^^CI||ED||||7|S|||62|6635130^^^AccMgr^VN^1|865^SP KOPP|||||||||||||||||||1||A|||20060404090500
PV2||^NO||||||20060404090500||||||||||||||||||||||||||||||S
DG1|1||^HEADACHE|HEADACHE||A|||||||||0
GT1|1|382582|TEST^PATIENT MF||21 PALM MANOR^^EAST SYRACUSE^NY^130570000|||19570414|M|||000987655||||||||11
IN1|1|SELF PAY NYS|734|SELF PAY NYS|||||||||||5|TEST^PATIENT MF|1|19570414|21 PALM MANOR^^EAST SYRACUSE^NY^130570000|||||||||||||||||||||||11|M||||||382582
IN1|2|SELF PAY|705|SELFPAY|||||||||||5||1
IN2|1||000987655
</template>
</transformer>
?
	<filter>
<rules/>
</filter>
<transportName>Database Writer</transportName>
</com.webreach.mirth.model.Connector>
</destinationConnectors>
?
	<properties>
<property name="initialState" value="stopped"/>
<property name="recv_xml_encoded" value="true"/>
</properties>
</com.webreach.mirth.model.Channel>
__________________
Jon Bartels

Zen is hiring!!!!
http://consultzen.com/careers/
Talented healthcare IT professionals wanted. Engineers to sales to management.
Good benefits, great working environment, genuinely interesting work.
Reply With Quote
  #2  
Old 10-27-2006, 12:40 PM
jbartels jbartels is offline
Mirth Guru
 
Join Date: Oct 2006
Posts: 719
jbartels is on a distinguished road
Default Re: LLP local loopback??

VICTORY!

I had 'recieves XML' checked for some reason.

Best message board support ever. As soon as I post here I find the answer myself. You guys must be psychic.
__________________
Jon Bartels

Zen is hiring!!!!
http://consultzen.com/careers/
Talented healthcare IT professionals wanted. Engineers to sales to management.
Good benefits, great working environment, genuinely interesting work.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Copying files from FTP source to local folder skrugg Support 4 09-25-2015 10:27 AM
local & global variabes at filters, tranformer and destinations albertosaez Support 3 05-11-2009 02:43 AM
Problem to update local subversion source tree angelo Development 2 06-17-2007 11:54 PM


All times are GMT -8. The time now is 12:20 PM.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Mirth Corporation